There were some threading bugs in some early versions of gtk+
(specifically with events_pending() and mainiteration()). You should
really use gtk+ >= 1.2.4.  I should have this check in the configure
script.

The other possible difference between the mandrake is if one was compiled
with threading and the other wasn't.

James.

--
Email: [EMAIL PROTECTED]
WWW:   http://www.daa.com.au/~james/


On Sun, 27 Feb 2000, Scott Bender wrote:

> 
> Yeah, this is a strange one. I have one linux box (Mandrake 7) which does not need 
>the thread_enter/leave sutff,
> and another (RedHat 6.0) that does need it. They're both running the same pygtk 
>(0.6.3), but different versions of
> gtk, the Madrake box has 1.2.6, the RedHat box has 1.2.1. I'm guessing that this is 
>the reason.
> 
> - Scott
> 
> "Mitch Chapman" wrote:  
> >  
> >  Here's an excerpt from a module of miscellaneous pygtk functions.
> >  It shows three platform-dependent implementations of an update()
> >  function.  update() is used e.g. to update a progress bar
> >  in the middle of a time-consuming operation -- it's analogous to
> >  the Tkinter update() function.
> >  
> >  I haven't bothered looking at Gtk+ or pygtk sources in order to figure 
> >  out why you need threads_(enter|leave) on Solaris but not on Linux.
> >  If somebody could explain the difference I'd be grateful.
> >  
> >  One last note:  This code was tested w. pygtk 0.6.2, on all
> >  three platforms.
> >  
> >  --
> >  Mitch
> >  [EMAIL PROTECTED]
> 
> >  
> >  Mitch Chapman wrote:
> >  > 
> >  > On Sat, 26 Feb 2000, Scott Bender wrote:
> >  > > Actually, the hang came after my timeout function completed. It was calling 
>mainiteration(FALSE) to
> >  > > update a progress bar, which was causing the hang. Anyone know why?
> >  > >
> >  > > thanks,
> >  > > - Scott
> >  > 
> >  > I've seen this recently.  The behavior varies depending on what version
> >  > of Gtk+ you're running with, and on what operating system.
> >  > 
> >  > The basic problem is that, on some platforms, even w. Gtk+ 1.2.6,
> >  > you need to surround calls to gtk.events_pending() and
> >  > gtk.mainiteration() with calls to gtk.threads_leave() and
> >  > gtk.threads_enter(). On others (e.g. Solaris) you *shouldn't* do so.
> >  To unsubscribe: echo "unsubscribe" | mail [EMAIL PROTECTED]
> >  
> 
> To unsubscribe: echo "unsubscribe" | mail [EMAIL PROTECTED]
> 

To unsubscribe: echo "unsubscribe" | mail [EMAIL PROTECTED]

Reply via email to