summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Fl.cxx12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/Fl.cxx b/src/Fl.cxx
index f00952d85..9e7aa0dcc 100644
--- a/src/Fl.cxx
+++ b/src/Fl.cxx
@@ -1586,11 +1586,15 @@ void Fl_Window::hide() {
}
XDestroyWindow(fl_display, ip->xid);
// end of fix for STR#3079
- for (int ii = 0; ii < count; ii++) {
- doit[ii]->hide();
- doit[ii]->show();
+ if (count) {
+ int ii;
+ for (ii = 0; ii < count; ii++) doit[ii]->hide();
+ for (ii = 0; ii < count; ii++) {
+ if (ii != 0) doit[0]->show(); // Fix for STR#3165
+ doit[ii]->show();
+ }
+ delete[] doit;
}
- if (count) delete[] doit;
#elif defined(__APPLE_QUARTZ__)
ip->destroy();
#else