]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
2007-10-02 Carlos Eduardo Seo <cseo@linux.vnet.ibm.com>
authorUlrich Weigand <uweigand@de.ibm.com>
Tue, 2 Oct 2007 16:50:08 +0000 (16:50 +0000)
committerUlrich Weigand <uweigand@de.ibm.com>
Tue, 2 Oct 2007 16:50:08 +0000 (16:50 +0000)
* tui/tui-interp.c (tui_init): Initialize tui's SIGWINCH
signal handler.
* tui/tui-win.c (tui_initialize_win): New function for
initializing tui's SIGWINCH signal handler.
* tui/tui-win.h (tui_initialize_win): Declare.

gdb/ChangeLog
gdb/tui/tui-interp.c
gdb/tui/tui-win.c
gdb/tui/tui-win.h

index 0276e2cbf205ae7543b2156f917bdcb86ef052e9..387661a0e57df83d5d06683c7f167a53c4dff21b 100644 (file)
@@ -1,3 +1,11 @@
+2007-10-02  Carlos Eduardo Seo  <cseo@linux.vnet.ibm.com>
+
+       * tui/tui-interp.c (tui_init): Initialize tui's SIGWINCH
+       signal handler.
+       * tui/tui-win.c (tui_initialize_win): New function for
+       initializing tui's SIGWINCH signal handler.
+       * tui/tui-win.h (tui_initialize_win): Declare.
+
 2007-10-02  Ulrich Weigand  <uweigand@de.ibm.com>
 
        * ppc-linux-nat.c (ppc_linux_stopped_data_address): Cast
index 9725899301cb24684613c5a86a55d5278cac1c1a..4b2b91a959b95ce29fc1afecf2c1bcfa92731349 100644 (file)
@@ -56,6 +56,7 @@ tui_init (void)
   tui_initialize_static_data ();
 
   tui_initialize_io ();
+  tui_initialize_win ();
   tui_initialize_readline ();
 
   return NULL;
index d90bb057a440e91a2d64ddce13104d8500a03379..aea6b3ec00c4c6512d7b65ad597f3890cc16b4ec 100644 (file)
@@ -50,6 +50,8 @@
 #include <ctype.h>
 #include "readline/readline.h"
 
+#include <signal.h>
+
 /*******************************
 ** Static Local Decls
 ********************************/
@@ -813,6 +815,21 @@ tui_sigwinch_handler (int signal)
   tui_set_win_resized_to (TRUE);
 }
 
+/* Initializes SIGWINCH signal handler for the tui.  */
+void
+tui_initialize_win (void)
+{
+#ifdef SIGWINCH
+#ifdef HAVE_SIGACTION
+  struct sigaction old_winch;
+  memset (&old_winch, 0, sizeof (old_winch));
+  old_winch.sa_handler = &tui_sigwinch_handler;
+  sigaction (SIGWINCH, &old_winch, NULL);
+#else
+  signal (SIGWINCH, &tui_sigwinch_handler);
+#endif
+#endif
+}
 
 
 /*************************
index b6c73d51f1106ab034132641afae4d5805ee73bf..4a8da1ee3e015d9453231c22378a58add167271b 100644 (file)
@@ -49,6 +49,8 @@ extern int tui_active_border_attrs;
 
 extern int tui_update_variables (void);
 
+extern void tui_initialize_win (void);
+
 /* Update gdb's knowledge of the terminal size.  */
 extern void tui_update_gdb_sizes (void);