(pr, pp, pp1, pv, pv1): Force print_output_debug_flag to zero
authorEli Zaretskii <eliz@gnu.org>
Sat, 25 Mar 2006 18:01:38 +0000 (18:01 +0000)
committerEli Zaretskii <eliz@gnu.org>
Sat, 25 Mar 2006 18:01:38 +0000 (18:01 +0000)
before calling debug_print or safe_debug_print.

src/.gdbinit
src/ChangeLog

index aeabe19..12a9d01 100644 (file)
@@ -58,8 +58,14 @@ define xgettype
 end
 
 # Set up something to print out s-expressions.
+# We save and restore print_output_debug_flag to prevent the w32 port
+# from calling OutputDebugString, which causes GDB to display each
+# character twice (yuk!).
 define pr
+  set $output_debug = print_output_debug_flag
+  set print_output_debug_flag = 0
   set debug_print ($)
+  set print_output_debug_flag = $output_debug
 end
 document pr
 Print the emacs s-expression which is $.
@@ -69,7 +75,10 @@ end
 # Print out s-expressions
 define pp
   set $tmp = $arg0
+  set $output_debug = print_output_debug_flag
+  set print_output_debug_flag = 0
   set safe_debug_print ($tmp)
+  set print_output_debug_flag = $output_debug
 end
 document pp
 Print the argument as an emacs s-expression
@@ -81,7 +90,10 @@ define pp1
   set $tmp = $arg0
   echo $arg0
   printf " = "
+  set $output_debug = print_output_debug_flag
+  set print_output_debug_flag = 0
   set safe_debug_print ($tmp)
+  set print_output_debug_flag = $output_debug
 end
 document pp1
 Print the argument as an emacs s-expression
@@ -94,7 +106,10 @@ end
 # Print value of lisp variable
 define pv
   set $tmp = "$arg0"
+  set $output_debug = print_output_debug_flag
+  set print_output_debug_flag = 0
   set safe_debug_print ( find_symbol_value (intern ($tmp)))
+  set print_output_debug_flag = $output_debug
 end
 document pv
 Print the value of the lisp variable given as argument.
@@ -106,7 +121,10 @@ define pv1
   set $tmp = "$arg0"
   echo $arg0
   printf " = "
+  set $output_debug = print_output_debug_flag
+  set print_output_debug_flag = 0
   set safe_debug_print (find_symbol_value (intern ($tmp)))
+  set print_output_debug_flag = $output_debug
 end
 document pv1
 Print the value of the lisp variable given as argument.
index 15267b4..bc9a29f 100644 (file)
@@ -1,3 +1,12 @@
+2006-03-25  Eli Zaretskii  <eliz@gnu.org>
+
+       * .gdbinit (pr, pp, pp1, pv, pv1): Force print_output_debug_flag
+       to zero before calling debug_print or safe_debug_print.
+
+       * print.c (print_output_debug_flag): New global variable.
+       (Fexternal_debugging_output) [WINDOWSNT]: Don't call
+       OutputDebugString if print_output_debug_flag is zero.
+
 2006-03-24  Paul Eggert  <eggert@cs.ucla.edu>
 
        * editfns.c (TM_YEAR_BASE): Move up, so the changes below can use it.