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

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]