* 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.
This commit is contained in:
Keith Seitz 1998-05-24 21:05:12 +00:00
parent aa81c3ca99
commit 21b3bc779c
4 changed files with 56 additions and 3 deletions

View file

@ -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;