bug-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Patch for gui/Tools/example.m


From: Chris B. Vetter
Subject: Re: Patch for gui/Tools/example.m
Date: Mon, 12 May 2003 12:56:09 -0700

On Mon, 12 May 2003 20:39:59 +0100
Richard Frith-Macdonald <richard@brainstorm.co.uk> wrote:
> However ... the original code is 'right' and the patch is 'wrong' ...
> the original code calls abort() ... which is the correct way to 
> terminate a program so that you can get a core-dump and debug it.

I agree, for debugging purpose it makes sense to dump a core.

> For a daemon like gpbs which should really never crash, it's important
> that we should be able to debug it if it does crash, and it's good 
> practice in general to call abort() if you can't manage to recover
> from an error.

gpbs did crash during termination, ie. a user's termination of X11.
Again, abort()'ing for debugging purpose is fine -- for a developer.

A regular user will see a huge core file and simply wonder where it came
from.

A user doesn't care and will only see a huge file that eats up
his/her quota/diskspace.

> Also ... barring a kernel bug, the signal status of the process will 
> have no effect on any other process ... so if your X11 session is
> dieing, doesn't it make more sense to try to figure out what the bug
> is ... rather than trying to change other software to hide the
> problem?

... see above.

However, setting a signal (even if it's just SIG_IGN'd) during
initialization requires resetting the signal back to SIG_DFL
during termination - which example_service did not.

WindowMaker for example doesn't like it when its "children" won't
properly reset signals...

-- 
Chris




reply via email to

[Prev in Thread] Current Thread [Next in Thread]