Re: Remove libgnomeui where possible?



[...]
> > > It's not that tricky to copy and paste the libgnomeui code that handles
> > > sigsegv and calls bug-buddy, the code is pretty small.  I'd do that.
> > > Maybe GTK+ should have a hook for a process to call on sigsegv...

thoughts,
   - Ripping out libgnomeui is probably a good idea anyway regardless 
     of application startup time, if only to put more distance between
     modern app developers and stale, old, depricated widgets/code 
     (and an app without libgnomeui is one step closer to portability if
     I'm not mistaken).
   - The yelp launch code is really really simple, even when combined
     with online help browsing support (Vincent Geddes imported this
     into Glade and copied it from another app I cant remember now, the
     code is only like one function ~50 lines, mostly a swichcase about
     what browser to chose when running on win32).
   - sigsegv handlers is a little bit of a touchy affair, typically you
     only want to print an error report from there and return (hoping
     ofcourse that your program state doesnt cause you to double-fault
     while printing the report). I havent looked at the libgnomeui code
     that does this but it would definitely be desirable for apps to
     share that code - but since sigsegv handling imo is not something
     you'd want to encourage in general - I doubt its a good idea to
     make a gtk+ api for it.

But heres an idea... applications launched by the panel should be
watched by the panel (i.e. SIGCHILD/waitpid()), and should be run
in a `ulimit -c unlimited` environment (well - an environement that
will at least permit core dumps).

This way the panel (if that is indeed the thingy that launches 
things in a gnome desktop), would know the bugzilla information 
from the .desktop file, it would catch the programs abnormal exit 
and upload the log without the program ever knowing about bugbuddy 
or anything like that - PLUS theres never any chance of 
double-faulting in unsafe segv handlers.

Cheers,
                    -Tristan

PS: If you are launching your apps by command line then I assume
you also have gdb handy and you'll be uploading a patch instead
of a stack trace ;-)





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