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 mailing list
gtk-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-list

Reply via email to