application crash upon fork()

i have an application that has some similar characteristics to gwcc, in that
it can ping, finger, traceroute, etc an IP address and print it's results to
a gnome gui.  until now, this app had a single thread -- that is, when the
user selected the radio buttons for ping, traceroute, etc., the application
would first ping the IP and send the data to a file then traceroute the IP
and send the data to a file...  when all the selected options were finished,
the app would cat the data files together and display the info in gtk text
box.  recently, i have been trying to make it faster, so instead of pinging,
then traceroute, etc., my app now forks child processes for each selected
option.  when the signal handler recieves the last SIGCHLD, the app proceeds
just like before.  unfortunately, now when my app forks a child, the gnome
gui crashes.  the child process still does it's job correctly and reports to
the signal handler as expected, but there is no gui to display the data in
i wrote a command-line program in C that did the same thing without a
graphical interface, and it worked just fine.
i suppose my question would be: has anyone else had issues with forking
child processes under gnome, and if so -- what's the work around?

os - rh 7.3
gnome libs - ximian (current as of today)


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