Re: Threading issues



On Sat, Jan 31, 2004 at 06:26:36PM +0000, Chris Seaton wrote:

The save routine (running in the new thread) shows dialog boxes, both 
modal and modaless, but both transient on the main window. Is this 
simply not allowed?

The first dialog shown by the save thread is the file selector. The file 
selector shows ok, but when I close it I get

(cspassword:15291): Gdk-CRITICAL **: file gdkwindow-x11.c: line 1908 
(gdk_window_set_geometry_hints): assertion `window != NULL' failed

(cspassword:15291): Gdk-CRITICAL **: file gdkwindow-x11.c: line 1289 
(gdk_window_resize): assertion `window != NULL' failed
Xlib: unexpected async reply (sequence 0x5e7)!

The program is otherwise stable and the whole thing works when I keep 
the save routine in the main thread (running from the event handler). I 
don't think there could be any problems with critical sections here; 
with the main window disabled there is no way that the document would be 
modified during the save routine.

You need to read
http://developer.gnome.org/doc/API/2.0/gdk/gdk-Threads.html
carefully and follow it. Locking out GUI elements does not stop the gtk
mainloop from running, which means that you must still use the locks in
the appropriate places.



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