Re: [G2R] Re: Various releases ...

Hi Havoc,

On Sat, 2002-04-20 at 17:20, Havoc Pennington wrote:
> Ugh, if I'm not mistaken this is the Evil use of atexit() - it's not
> debug-only.


> Programs crash. Programs get the kill -9 treatment. atexit() is not
> reliable... fix the architecture... atexit() is just going to make
> things work "most of the time" and so we'll never be able to track
> down and fix the random bogons when it doesn't work.

	Well - please propose a solution; I'm all ears.

	Initially I tried doing a sweep of all linc sockets on startup; but
this caused nasty issues forking gconfd - due to how the sockets were
setup, and the lack of people at the other end polling on them. Also it
seems to to scale overly beautifully [ having every app waiting for
every other app to respond before starting ], and of course just 1 app
sitting in a hard loop will lock everything up that uses CORBA - not

	So - the atexit handler removes the majority of the /tmp/orbit-foo
files in a fairly painless way, and it's always been there - I just
forward ported it from ORBit1.

	Of course - there are other solutions; like getting a single
application [ gnome-session ] to do a more interesting non-blocking poll
on all the descriptors in /tmp/orbit-foo and just removing anything that
responds rapidly with an "it's dead" type error.

	So ...

> Plus this reintroduces the "failure to use _exit() with fork/exec
> causes program implosion" issue that gtk 1.2 had.

	You just have to use _exit () with fork / exec. AFAIK that's just
something you have to do; why is it a problem ?



--  <><, Pseudo Engineer, itinerant idiot

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