Hello all,

I would like suggest a patch to xwin.c to addresses a problem I am having. 
The problem is a synchronization issue between the plplot core and xwindows
driver when multiple streams/windows are present. The events thread in 
xwin.c saves and restores the current stream to handle expose/resize events, 
but this can cause crashes if plplot changes the active stream (in the main 
program thread) in between the save/restore. I have modified the events_thread
function to only save and restore the stream if necessary, rather than for all
events to minimize the likelihood of this problem occurring.

Best regards,
Andrew


diff xwin.svn xwin.c
1327,1328c1327,1328
<                     /* As ResizeEH() ends up calling plRemakePlot(), that
<                      * indirectly uses the current stream, one needs to
---
>                     /* As ExposeEH() may or ResizeEH() will end up calling 
> plRemakePlot(),
>                      * that indirectly uses the current stream, one needs to
1332,1333d1331
<                     oplsc = plsc;
<                     plsc  = lpls;
1336a1335,1338
>                       if( !dev->write_to_pixmap ) {
>                           oplsc = plsc;
>                           plsc  = lpls;
>                       }
1337a1340,1342
>                       if( !dev->write_to_pixmap ) {
>                         plsc = oplsc;
>                       }
1339a1345,1346
>                         oplsc = plsc;
>                         plsc  = lpls;
1340a1348
>                       plsc = oplsc;
1343c1351
<                     plsc = oplsc;
---
> 
------------------------------------------------------------------------------
Download Intel&#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to