]> skyeroc.xyz Git - dgamelaunch/commitdiff
try to not stomp all over ncurses' WINCH handler (Jesse Luehrs <doy@tozt.net>)
authorPasi Kallinen <paxed@alt.org>
Mon, 3 Oct 2011 15:42:30 +0000 (15:42 +0000)
committerPasi Kallinen <paxed@alt.org>
Mon, 3 Oct 2011 15:42:30 +0000 (15:42 +0000)
git-svn-id: svn://katsu.triplehelix.org/dgamelaunch/trunk@604 db0b04b0-f4d1-0310-9a6d-de3e77497b0e

dgamelaunch.c
dgl-common.c

index d377df41204d4c926ca4219ab9ba6ae890685da2..27bab7446ef8d6bcd4b1c192a5bb809a6d638ac8 100644 (file)
@@ -100,6 +100,7 @@ extern int yyparse ();
 
 char * __progname;
 int  g_idle_alarm_enabled = 0;
+void (*g_chain_winch)(int);
 
 #ifndef USE_SQLITE3
 int f_num = 0;
@@ -2535,8 +2536,6 @@ main (int argc, char** argv)
   signal (SIGQUIT, catch_sighup);
   signal (SIGTERM, catch_sighup);
 
-  signal(SIGWINCH, sigwinch_func);
-
   (void) tcgetattr (0, &tt);
   if (-1 == ioctl (0, TIOCGWINSZ, (char *) &win) || win.ws_row < 4 ||
                  win.ws_col < 4) /* Rudimentary validity check */
@@ -2650,6 +2649,9 @@ main (int argc, char** argv)
   }
 
   initcurses ();
+
+  g_chain_winch = signal(SIGWINCH, sigwinch_func);
+
   term_resize_check();
 
   idle_alarm_set_enabled(1);
index d58606386d9043136f15cc9f83cbfa7fb6bba2b3..798fc28c171de8efd9e2bbcb37a212f7fd960636 100644 (file)
@@ -18,6 +18,7 @@
 
 extern FILE* yyin;
 extern int yyparse ();
+extern void (*g_chain_winch)(int);
 
 /* Data structures */
 struct dg_config **myconfig = NULL;
@@ -74,6 +75,7 @@ sigwinch_func(int sig)
 {
     signal(SIGWINCH, sigwinch_func);
     curses_resize = 1;
+    g_chain_winch(sig);
 }
 
 void