Hi Alan I just tried another thing as I was not feel comfortable by the fact that apparently QtExtWidget is setup in the main window but free in the driver however just found out that in fact the plD_tidy_extqt( PLStream * pls ) is never reached. I compiled the original qt_example that does not crash in my system against a plplot build where i put void plD_tidy_extqt( PLStream * pls ) {
printf("passei aqui 1\n"); QtExtWidget * widget = NULL; widget = (QtExtWidget *) pls->dev; if ( widget != NULL ) { handler.DeviceClosed( widget ); delete widget; pls->dev = NULL; } printf("passei aqui 2\n"); closeQtApp(); printf("passei aqui 3\n"); } just to make sure i really had the right build I also put void plD_init_extqt( PLStream * pls ) { printf("passei aqui 0\n"); .... .... so I run qt_example play with it for a while. close it without any crash but in my terminal the only thing there was artome@linux-z41u:~/libplplotNOchanged/share/plplot5.14.0/examples/c++> ./qt_example passei aqui 0 artome@linux-z41u:~/libplplotNOchanged/share/plplot5.14.0/examples/c++> so in fact there is something strange with this driver and even the discussion either to drop closeQtApp(); call is pointless because it seems never to occur. In two months time I will look careful into this and eventually will add an new driver based on qgraphicsview widget and storing things in vector format. cheers, P.s. just now I realize that there is portuguese text. So "passei aqui" means I "reach this point", more or less. On Sat, Dec 29, 2018 at 8:08 PM Alan W. Irwin <alan.w.irwin1...@gmail.com> wrote: > On 2018-12-29 16:50-0000 António Rodrigues Tomé wrote: > > > Hi Alan > > it is easy to put this in a more standard qt way where plot win is not > > defined as a pointer and put win.show > > replacing > > // a.setActiveWindow( win ); > > // win->setVisible( true ); > > before the return a.exec() > > > > the fun thing is that in this case the program always crashes when one > > closes the window. It crashes when the destructor > > of PlotWindow::~PlotWindow() is called. > > it crashes there even if you empty the destructor. so I would conclude > > something very wrong with the extqt driver. > > My experience was the same. Any change I attempted caused reliable > segfaults > rather than rare segfaults. So I agree there is some flaw in the current > extqt device. > > > I'll promise to have a look, > > and probably completely replace it by something different as I do not > like > > it, unlike the others that are nice. > > That would be great when you have time for this. > > Alan > __________________________ > Alan W. Irwin > > Programming affiliations with the FreeEOS equation-of-state > implementation for stellar interiors (freeeos.sf.net); the Time > Ephemerides project (timeephem.sf.net); PLplot scientific plotting > software package (plplot.sf.net); the libLASi project > (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); > and the Linux Brochure Project (lbproject.sf.net). > __________________________ > > Linux-powered Science > __________________________ > -- António Rodrigues Tomé Universidade da Beira Interior Instituto D. Luís (lab associado) email address: art...@gmail.com art...@ubi.pt http://www.researcherid.com/rid/A-5681-2013
_______________________________________________ Plplot-devel mailing list Plplot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-devel