Dmitry Konyshev wrote:
You can use gdb to set up a break point in your function and see how
execution flow gets to your function and in which thread's context.
Okay, I did this. You were totally right:
The callbacks are called within the context of the main thread. Still,
the program hangs when not wrapping the call to dlg.run() in
gdk_threads_*() functions. After stepping through the application flow
with a debugger, it seems the program does not even hang at this exact
point! The whole handle_transfer_overwrite() function where I spawn the
dialog actually completes execution flawlessly, so it happens somewhere
after. I couldn't yet figure out where exactly the program hangs, just
that it doesn't when I acquire the GDK lock.
Please, if you have any more ideas, I'd be very thankful, cause right
now I don't know what to do.
Thanks,
Matthias
_______________________________________________
gtk-list@xxxxxxxxx
http://mail.gnome.org/mailman/listinfo/gtk-list