diff libinterp/corefcn/debug.cc @ 17818:f1b59ef34eda

attempt to avoid setting persistent state on i/o streams (bug #40396) * utils.h, utils.cc (octave_preserve_stream_state): New class. * debug.cc, pr-output.cc, variables.cc, ov-base-sparse.cc: Use it to save and restore stream flags, precision, field width, and fill character.
author John W. Eaton <jwe@octave.org>
date Thu, 31 Oct 2013 17:26:04 -0400
parents 175b392e91fe
children 0806c9e75e08
line wrap: on
line diff
--- a/libinterp/corefcn/debug.cc	Thu Oct 31 21:44:58 2013 +0100
+++ b/libinterp/corefcn/debug.cc	Thu Oct 31 17:26:04 2013 -0400
@@ -55,6 +55,7 @@
 #include "pt-stmt.h"
 #include "toplev.h"
 #include "unwind-prot.h"
+#include "utils.h"
 #include "variables.h"
 
 #include "debug.h"
@@ -1166,6 +1167,8 @@
 
           if (nframes_to_display > 0)
             {
+              octave_preserve_stream_state stream_state (os);
+
               os << "stopped in:\n\n";
 
               Cell names = stk.contents ("name");