diff options
| -rw-r--r-- | src/Fl_win32.cxx | 5 | ||||
| -rw-r--r-- | test/demo.cxx | 8 |
2 files changed, 13 insertions, 0 deletions
diff --git a/src/Fl_win32.cxx b/src/Fl_win32.cxx index 7b18f3100..6fc64c778 100644 --- a/src/Fl_win32.cxx +++ b/src/Fl_win32.cxx @@ -267,6 +267,11 @@ int fl_wait(double time_to_wait) { if (Fl::idle || Fl::damage()) time_to_wait = 0.0; + // if there are no more windows and this timer is set + // to FOREVER, continue through or look up indefinetely + if (!Fl::first_window() && time_to_wait==1e20) + time_to_wait = 0.0; + fl_unlock_function(); time_to_wait = (time_to_wait > 10000 ? 10000 : time_to_wait); diff --git a/test/demo.cxx b/test/demo.cxx index ee75b2424..32a4687de 100644 --- a/test/demo.cxx +++ b/test/demo.cxx @@ -306,6 +306,14 @@ int load_the_menu(const char* fname) } for (;;) { if (fgets(line,256,fin) == NULL) break; + // remove all carriage returns that Cygwin may have inserted + char *s = line, *d = line; + for (;;++d) { + while (*s=='\r') s++; + *d = *s++; + if (!*d) break; + } + // interprete the line j = 0; i = 0; while (line[i] == ' ' || line[i] == '\t') i++; if (line[i] == '\n') continue; |
