From 21b3bc779ca64a3b1d39886a74f0304c8dc96368 Mon Sep 17 00:00:00 2001 From: Keith Seitz Date: Sun, 24 May 1998 21:05:12 +0000 Subject: * ser-unix.c (wait_for): Do not reset timeout_remaining for cygwin32 so that we can use this member to track real timeouts. (hardwire_readchar): Modify for cygwin32 so that we only ever use a real system timeout of one second. Track the "real" timeout as a series of th ese one second timeouts. Call ui_loop_hook to keep the gui alive. * top.c: Define new hook for cygwin32, "ui_loop_hook". * gdbtk.c (gdbtk_init): Add ui_loop_hook for CygWin32 to work around update problems. --- gdb/gdbtk.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'gdb/gdbtk.c') diff --git a/gdb/gdbtk.c b/gdb/gdbtk.c index 6027cdb..4ca7a63 100644 --- a/gdb/gdbtk.c +++ b/gdb/gdbtk.c @@ -91,6 +91,10 @@ int (*ui_load_progress_hook) PARAMS ((char *, unsigned long)); void (*pre_add_symbol_hook) PARAMS ((char *)); void (*post_add_symbol_hook) PARAMS ((void)); +#ifdef __CYGWIN32__ +extern void (*ui_loop_hook) PARAMS ((int)); +#endif + char * get_prompt PARAMS ((void)); static void null_routine PARAMS ((int)); @@ -1895,6 +1899,12 @@ x_event (signo) in_x_event = 1; +#ifdef __CYGWIN32__ + if (signo == -2) + if (gdbtk_timer_going) + gdbtk_stop_timer (); +#endif + /* Process pending events */ while (Tcl_DoOneEvent (TCL_DONT_WAIT|TCL_ALL_EVENTS) != 0) ; @@ -2305,6 +2315,9 @@ gdbtk_init ( argv0 ) readline_hook = gdbtk_readline; readline_end_hook = gdbtk_readline_end; ui_load_progress_hook = gdbtk_load_hash; +#ifdef __CYGWIN32__ + ui_loop_hook = x_event; +#endif pre_add_symbol_hook = gdbtk_pre_add_symbol; post_add_symbol_hook = gdbtk_post_add_symbol; create_tracepoint_hook = gdbtk_create_tracepoint; -- cgit v1.1