Lists Home |
Date Index |
----- Original Message -----
From: "Elliotte Rusty Harold" <email@example.com>
To: "Jochen Wiedmann" <firstname.lastname@example.org>
Cc: <email@example.com>; <firstname.lastname@example.org>
Sent: Monday, March 08, 2004 4:12 PM
> At 9:30 PM +0100 3/8/04, Jochen Wiedmann wrote:
> >Elliotte Rusty Harold wrote:
> >> Then your code will break when used with some of today's parsers
> >>which do call endDocument() after a fatal error.. :-(
> I'm not sure what this program is supposed to demonstrate. One of the
> conclusions I think we're reaching is that if a client supplied
> method such as startDocument() throws an exception, then endDocument
> (and fatalError()) are not called.
In that case, endDocument() should also not be called in the
case of a parser generated exception. I don't see why one should
treat a client generated exception differently, it would just
make client code more complicated.
> endDocument() and fatalError()
> are for the use of the parser only. If the client chooses to
> prematurely abort processing by tossing an exception, then the client
> has the responsibility to clean up before doing so.
I think cleanup responsibility is determined by what you
"own", not by where the exception originates.