|
From: Daniel J S. <dan...@ie...> - 2017-07-07 01:08:45
|
On 07/06/2017 05:19 PM, Daniel J Sebald wrote: > On 07/06/2017 05:03 PM, Ethan A Merritt wrote: >> On Thursday, 06 July, 2017 16:27:00 Daniel J Sebald wrote: >> >>> So, what I'm going on at this point is: >>> >>> 1) It looks like the graphics may be running in a secondary thread. >>> >>> 2) wxWidgets documentation states "GUI calls are explicitly not safe at >>> all in secondary threads and could end your application prematurely." >>> >>> The contra-positive logic doesn't necessarily conclude that the source >>> of the problem therefore lies in gnuplot. Plus it is a lot of work to >>> test the theory that rearranging wx_gui so that GUI manipulation is only >>> done in the main thread. So, for me it's inconclusive from my >>> understanding just who's responsible for the need for XInitThreads(). >>> >>> Dan >> >> >> So do all the errors go away if you do >> >> ./configure --with-wx-single-threaded >> >> (still omitting the call to XInitThreads and not linking to -lX11). > > Yes, on the crash (plot is successful): However, wx-single-threaded doesn't work for multiple windows for me. The first plot is fine. But then raise window gnuplot> set term wxt 1 wxt_reset wxt_reset ends Terminal type is now 'wxt' Options are '1 enhanced' gnuplot> plot sin(x) [repeated about 300 times or more] Init opening a new plot window wxtApp::OnCreateWindow wxtFrame constructor wxtFrame constructor 2 frame OnSize Init opening a new plot window wxtApp::OnCreateWindow wxtFrame constructor wxtFrame constructor 2 frame OnSize Init opening a new plot window Segmentation fault Maybe a stack overflow is the segfault. Why it keeps opening new windows (that don't appear visually), I don't know. Dan |