]> code.delx.au - gnu-emacs/commitdiff
Fix multibyte confusion in diagnostics
authorPaul Eggert <eggert@cs.ucla.edu>
Tue, 18 Aug 2015 23:24:27 +0000 (16:24 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Tue, 18 Aug 2015 23:24:57 +0000 (16:24 -0700)
* src/print.c (print_error_message):
Don't assume that the caller's name is unibyte.
* src/xdisp.c (vadd_to_log):
Don't assume that the formatted diagnostic is unibyte.

src/print.c
src/xdisp.c

index f396151eaa1c82dbebe8011c116f4ed01a3313c2..af615749f376fbb6a099333d106e70e6e9233423 100644 (file)
@@ -902,7 +902,7 @@ print_error_message (Lisp_Object data, Lisp_Object stream, const char *context,
       USE_SAFE_ALLOCA;
       char *name = SAFE_ALLOCA (cnamelen);
       memcpy (name, SDATA (cname), cnamelen);
-      message_dolog (name, cnamelen, 0, 0);
+      message_dolog (name, cnamelen, 0, STRING_MULTIBYTE (cname));
       message_dolog (": ", 2, 0, 0);
       SAFE_FREE ();
     }
index 6d747ebc5ceb5e9c44d6243db52a9e526538fd69..88e6c8d16137ef7920e811ad3c4d6bbba3f5da21 100644 (file)
@@ -9843,7 +9843,7 @@ vadd_to_log (char const *format, va_list ap)
   char *buffer = SAFE_ALLOCA (len);
   memcpy (buffer, SDATA (msg), len);
 
-  message_dolog (buffer, len - 1, true, false);
+  message_dolog (buffer, len - 1, true, STRING_MULTIBYTE (msg));
   SAFE_FREE ();
 
   UNGCPRO;