I'll take your car analogy and run with it.
When the car's computer detects a problem with the engine, it turns on
the Check Engine light. Ok, that's the failed assertion warning. Would
you appreciate it if the computer shut down your car, "just to be on the
safe side"? That's what RB is doing currently. Most of us are willing
to accept a little risk in this situation, at least to get the car
pulled off to the side or that last block home from the store. I'm not
asking for it to go 100 miles, but I'd like to try to make it a block or
two to a good stopping point if I can. If it finally kills (due to the
engine problem), that's something I can accept.
Sure, it might not run -reliably- after a failed assertion, but I'd like
to at least be given a -shot- at trapping it with an exception handler.
At least then I could display and log the location of the crash. (using
project cuisinart's detailed exception handling)
To suggest a solution.... how about a pragma like
#ContinueOnFailedAssertion, which, if activated, would produce a
RuntimeFailedAssertion exception instead of that dialog box? Then we
could "play with matches" if we are willing to take the risks involved.
An additional bonus would be to make RuntimeFailedAssertion have a
couple properties, like .SourceFile as string and .LineNumber as
integer, so we could make note of them for Joe and crew.
oh, and if you're not humor-impaired...
http://www.vftp.net/temp/windowssttng.jpg
;-)
- Nathan
On Tuesday, July 30, 2002, at 08:00 AM, REALbasic Developer Releases
wrote:
Subject: Re: Failure Assertion Exception
From: "Will Leshner" <leshner at ljug dot com>
Date: Mon, 29 Jul 2002 22:15:08 -0700
The downside is that exceptions are things that work in RB as long as RB
is working. When you get a failed assertion it means that RB isn't
working anymore, so there is no way that exceptions can be reliable.
We seem to love car analogies, so here's one. On my car if I'm really
low on gas a light comes on. That's kind of like my car is throwing a
low-gas exception. But if I get into an accident and my car is
destroyed, then I shouldn't be surprised if the light doesn't come on
even though all my gas has dribbled out of the tank. A failed assertion
is kind of like RB having a major car accident.
On Monday, July 29, 2002, at 04:57 PM, Lo Saeteurn wrote:
It should still show the dialog, but if you click continue, the
exception error would occur. i don't see any downside with this.
|