Description of problem: plotyy crashes octave due to problem in the default graphics engine (FLTK) Version-Release number of selected component (if applicable): octave-3.8.2-9.fc21.x86_64 How reproducible: every time Steps to Reproduce: 1. run octave 2. x=1:10; plotyy(x,x,x,x); Actual results: Octave crashes with SEGV Expected results: Octave does not crash and displays a graph
This is caused by FLTK because graphics_toolkit("gnuplot") x=1:10;plotyy(x,x,x,x); works fine and gives expected plot
The crash is caused by a corrupted 'overlay' variable in Fl_Gl_Window::show (this=0xd0e180) at Fl_Gl_Window.cxx:87 : if (overlay && overlay != this) ((Fl_Gl_Window*)overlay)->show(); p overlay $1 = (void *) 0x3ff0000000000000 p *(Fl_Gl_Window*)overlay Cannot access memory at address 0x3ff0000000000000
Just for completeness, I have fltk-1.3.3-2.fc21.x86_64
*** This bug has been marked as a duplicate of bug 1218360 ***
There seems to be a problem with the multiple definition of overlay. When Octave crashes, overlay as seen in the crashing leaf procedure Fl_Gl_Window::show is corrupted to (void *) 0x3ff0000000000000 (see comment 2), but up in the call stack it is different: up #1 0x00007fffeef98a90 in Fl_Window::handle (this=this@entry=0xcd7f30, ev=ev@entry=16) at Fl.cxx:1613 p overlay $6 = {int (const WINDOW *, WINDOW *)} 0x330a6121e0 <overlay> which happens to be identical to the definition of overlay just after Octave starts.