summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES3
-rw-r--r--src/Fl_Input_.cxx8
-rw-r--r--src/Fl_Text_Display.cxx6
-rw-r--r--src/Fl_Tile.cxx6
-rw-r--r--src/Fl_Wizard.cxx6
5 files changed, 16 insertions, 13 deletions
diff --git a/CHANGES b/CHANGES
index 5e4269e62..5d44da15d 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,5 +1,8 @@
CHANGES IN FLTK 1.1.5rc1
+ - Some of the widgets could crash an application if the
+ cursor was changed after a window was deleted (STR
+ #181)
- The Fl_Gl_Window WIN32 pixel format code did not
choose the pixel format with the largest depth buffer
(STR #175)
diff --git a/src/Fl_Input_.cxx b/src/Fl_Input_.cxx
index 6fd9716f3..c9e834be0 100644
--- a/src/Fl_Input_.cxx
+++ b/src/Fl_Input_.cxx
@@ -1,5 +1,5 @@
//
-// "$Id: Fl_Input_.cxx,v 1.21.2.11.2.27 2003/01/30 21:42:00 easysw Exp $"
+// "$Id: Fl_Input_.cxx,v 1.21.2.11.2.28 2003/11/01 01:07:07 easysw Exp $"
//
// Common input widget routines for the Fast Light Tool Kit (FLTK).
//
@@ -656,11 +656,11 @@ int Fl_Input_::handletext(int event, int X, int Y, int W, int H) {
switch (event) {
case FL_ENTER:
- if (active_r()) window()->cursor(FL_CURSOR_INSERT);
+ if (active_r() && window()) window()->cursor(FL_CURSOR_INSERT);
return 1;
case FL_LEAVE:
- if (active_r()) window()->cursor(FL_CURSOR_DEFAULT);
+ if (active_r() && window()) window()->cursor(FL_CURSOR_DEFAULT);
return 1;
case FL_FOCUS:
@@ -852,5 +852,5 @@ Fl_Input_::~Fl_Input_() {
}
//
-// End of "$Id: Fl_Input_.cxx,v 1.21.2.11.2.27 2003/01/30 21:42:00 easysw Exp $".
+// End of "$Id: Fl_Input_.cxx,v 1.21.2.11.2.28 2003/11/01 01:07:07 easysw Exp $".
//
diff --git a/src/Fl_Text_Display.cxx b/src/Fl_Text_Display.cxx
index 21a68a4aa..b37c8f5fc 100644
--- a/src/Fl_Text_Display.cxx
+++ b/src/Fl_Text_Display.cxx
@@ -1,5 +1,5 @@
//
-// "$Id: Fl_Text_Display.cxx,v 1.12.2.46 2003/08/24 13:09:06 easysw Exp $"
+// "$Id: Fl_Text_Display.cxx,v 1.12.2.47 2003/11/01 01:07:07 easysw Exp $"
//
// Copyright 2001-2003 by Bill Spitzak and others.
// Original code Copyright Mark Edel. Permission to distribute under
@@ -2978,7 +2978,7 @@ int Fl_Text_Display::handle(int event) {
case FL_LEAVE:
case FL_HIDE:
- if (active_r()) {
+ if (active_r() && window()) {
window()->cursor(FL_CURSOR_DEFAULT);
return 1;
@@ -3058,5 +3058,5 @@ int Fl_Text_Display::handle(int event) {
//
-// End of "$Id: Fl_Text_Display.cxx,v 1.12.2.46 2003/08/24 13:09:06 easysw Exp $".
+// End of "$Id: Fl_Text_Display.cxx,v 1.12.2.47 2003/11/01 01:07:07 easysw Exp $".
//
diff --git a/src/Fl_Tile.cxx b/src/Fl_Tile.cxx
index 3af8d2982..cb8d35269 100644
--- a/src/Fl_Tile.cxx
+++ b/src/Fl_Tile.cxx
@@ -1,5 +1,5 @@
//
-// "$Id: Fl_Tile.cxx,v 1.5.2.5.2.4 2003/01/30 21:42:51 easysw Exp $"
+// "$Id: Fl_Tile.cxx,v 1.5.2.5.2.5 2003/11/01 01:07:07 easysw Exp $"
//
// Tile widget for the Fast Light Tool Kit (FLTK).
//
@@ -96,7 +96,7 @@ void Fl_Tile::resize(int X,int Y,int W,int H) {
static void set_cursor(Fl_Tile*t, Fl_Cursor c) {
static Fl_Cursor cursor;
- if (cursor == c) return;
+ if (cursor == c || !t->window()) return;
cursor = c;
#ifdef __sgi
t->window()->cursor(c,FL_RED,FL_WHITE);
@@ -196,5 +196,5 @@ int Fl_Tile::handle(int event) {
}
//
-// End of "$Id: Fl_Tile.cxx,v 1.5.2.5.2.4 2003/01/30 21:42:51 easysw Exp $".
+// End of "$Id: Fl_Tile.cxx,v 1.5.2.5.2.5 2003/11/01 01:07:07 easysw Exp $".
//
diff --git a/src/Fl_Wizard.cxx b/src/Fl_Wizard.cxx
index fdb6cfa18..697fc6965 100644
--- a/src/Fl_Wizard.cxx
+++ b/src/Fl_Wizard.cxx
@@ -1,5 +1,5 @@
//
-// "$Id: Fl_Wizard.cxx,v 1.1.2.5 2003/01/30 21:43:00 easysw Exp $"
+// "$Id: Fl_Wizard.cxx,v 1.1.2.6 2003/11/01 01:07:07 easysw Exp $"
//
// Fl_Wizard widget routines.
//
@@ -199,10 +199,10 @@ Fl_Wizard::value(Fl_Widget *kid)
// This will restore the mouse pointer to the window's default cursor
// whenever the wizard pane is changed. Otherwise text widgets that
// show the next pane may leave the cursor set to the I beam, etc...
- window()->cursor(FL_CURSOR_DEFAULT);
+ if (window()) window()->cursor(FL_CURSOR_DEFAULT);
}
//
-// End of "$Id: Fl_Wizard.cxx,v 1.1.2.5 2003/01/30 21:43:00 easysw Exp $".
+// End of "$Id: Fl_Wizard.cxx,v 1.1.2.6 2003/11/01 01:07:07 easysw Exp $".
//