diff libinterp/corefcn/utils.h @ 27279:1c8b20731af4

Convert encoding just before writing to stream (bug #55452). * oct-stream.[cc,h] (printf): Don't convert format string separately. * oct-stream.cc (do_print_conv): Pass on encoding to octave::format. (do_printf): Convert strings to encoding. * utils.[cc,h] (format): Add overload with encoding specifier.
author Markus Mützel <markus.muetzel@gmx.de>
date Sat, 09 Mar 2019 22:09:25 +0100
parents 00f796120a6d
children b442ec6dda5c
line wrap: on
line diff
--- a/libinterp/corefcn/utils.h	Tue Mar 05 17:56:57 2019 +0100
+++ b/libinterp/corefcn/utils.h	Sat Mar 09 22:09:25 2019 +0100
@@ -109,8 +109,15 @@
   format (std::ostream& os, const char *fmt, ...);
 
   extern OCTINTERP_API size_t
+  format (std::ostream& os, const std::string& enc, const char *fmt, ...);
+
+  extern OCTINTERP_API size_t
   vformat (std::ostream& os, const char *fmt, va_list args);
 
+  extern OCTINTERP_API size_t
+  vformat (std::ostream& os, const std::string& enc,
+           const char *fmt, va_list args);
+
   extern OCTINTERP_API std::string
   vasprintf (const char *fmt, va_list args);