DO NOT REPLY TO THIS MESSAGE. INSTEAD, POST ANY RESPONSES TO THE LINK BELOW.
[STR New] Link: http://www.fltk.org/str.php?L1972 Version: 1.3-current Under MacOS X 10.x, when compiled for Quartz, fltk 1.3 (and fltk 1.1.9) causes segmentation fault in fl_cursor.cxx, line 233 (function void Fl_Window::cursor(Fl_Cursor c, Fl_Color, Fl_Color)) if Fl_Wizard::value(Fl_Widget *kid) is called before the window is 'shown'. This means, you cannot preset the page of a Fl_Wizard-widget before you 'show' your window. This happens only under Quartz. Under MS Windows, Linux and Quickdraw, this does not happen. The matter is that under Quartz, fl_cursor.cxx operates with pointers to the cursors. The current pointer is stored in fl_default_cursor. This pointer is initialized in void fl_open_display() (file Fl_mac.cxx). Before that, its value is NULL: fl_default_cursor is declared in Fl_mac.cxx as a global variable (cf. line 91). For this, operation *icrsr in fl_cursor.cxx, line 233 fails. To overcome this bug under Quartz, I hide the call SetCursor( *icrsr ) in line 233 of fl_cursor.cxx in the body of 'if (icrsr != NULL)'. (Thus, I patch fltk.) This works. But there could be other ways that ensure that icrsr (i.e. fl_default_cursor) is initialized properly before the first use. Link: http://www.fltk.org/str.php?L1972 Version: 1.3-current _______________________________________________ fltk-bugs mailing list [email protected] http://lists.easysw.com/mailman/listinfo/fltk-bugs
