+Sat Mar 28 12:13:23 1998 Keith Seitz <keiths@onions.cygnus.com>
+
+ * gdbtk.c (gdb_cmd): If argc > 2, assume that the busy and idle hooks
+ should not be called.
+
Thu Mar 26 22:29:28 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* gdbtk.c: (gdb_trace_status) new function.
#undef SIOCSPGRP
#endif
+static int No_Update = 0;
static int load_in_progress = 0;
static int in_fputs = 0;
if (running_now || load_in_progress)
return TCL_OK;
+ No_Update = 0;
+
Tcl_DStringAppend (result_ptr, "", -1);
save_ptr = result_ptr;
result_ptr = NULL;
{
Tcl_DString *save_ptr = NULL;
- if (argc != 2)
+ if (argc < 2)
error ("wrong # args");
if (running_now || load_in_progress)
return TCL_OK;
+ /* If there is a third argument, it'll mean that we do NOT want to run
+ the idle and busy hooks when we call execute_command. */
+ if (argc > 2)
+ No_Update = 1;
+ else
+ No_Update = 0;
+
/* for the load instruction (and possibly others later) we
set result_ptr to NULL so gdbtk_fputs() will not buffer
all the data until the command is finished. */
if (cmdblk->class == class_run || cmdblk->class == class_trace)
{
running_now = 1;
- Tcl_Eval (interp, "gdbtk_tcl_busy");
+ if (!No_Update)
+ Tcl_Eval (interp, "gdbtk_tcl_busy");
(*cmdblk->function.cfunc)(arg, from_tty);
running_now = 0;
- Tcl_Eval (interp, "gdbtk_tcl_idle");
+ if (!No_Update)
+ Tcl_Eval (interp, "gdbtk_tcl_idle");
}
else
(*cmdblk->function.cfunc)(arg, from_tty);