More crash-proof KCrash (was Re: Konq crash backtraces)
Oswald Buddenhagen
ossi at kde.org
Thu Jan 19 17:19:19 GMT 2006
On Thu, Jan 19, 2006 at 02:49:58PM +0100, Lubos Lunak wrote:
> On Tuesday 17 January 2006 21:03, Oswald Buddenhagen wrote:
> > the idea is to keep the handles open, so a parent process that
> > determines the child's state based on some pipes would not bury the
> > process until drkonqi diagnosed death
>
> That seems to be a rather rare case.
> Not closing all file handles on the other hand could prevent e.g.
> restarting of those applications.
>
errm, well, yes, that's sort of the idea behind it. :)
and maybe it's generally no terribly good idea to auto-restart an app
while it is in "crashing" state - sounds like a potential fork bomb (to
prevent that.
> > - in kdm's case that means resetting the x-server, so drkonqi
> > wouldn't have a particularly long appearance otherwise.
>
> I think you should consider this to be a special case and handle it
> specially. Since handles 0-2 aren't closed, as an ugly hack you could dup2()
> the handle you need in the application-supplied function for KCrash,
>
i'm not thrilled by this idea.
> or you could somehow check if the process still exists.
>
i remember having investigated alternatives.
iirc, wait() & co. don't work, because in ptraced state the process is
reparented (at least with 2.4 kernels; i know something changed a bit
recently, but i'm not sure it was exactly that).
anything else would be a hack ...
well, i already added setSafer() for kdm. maybe we should extend this to
setFlags(), with flags like RestrictedDialog, KeepFilesOpen, and later
maybe more?
--
Hi! I'm a .signature virus! Copy me into your ~/.signature, please!
--
Chaos, panic, and disorder - my work here is done.
More information about the kde-core-devel
mailing list