From 75f8653bfe0da39acca9dbcb8b021ad033ac6ae9 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sat, 30 May 2015 11:17:56 -0700 Subject: Don't misencode C-generated messages Also, be more consistent about calls to 'Fmessage' vs 'message'. * src/alloc.c (Fgc_status): Prefer AUTO_STRING to build_string for Fmessage call. * src/data.c (Fmake_variable_buffer_local) (Fmake_local_variable, Fmake_variable_frame_local): * src/doc.c (store_function_docstring): Use Fmessage, not message, since the argument can contain non-ASCII characters, and this can cause the resulting message to be incorrectly encoded for the current environment. * src/fns.c (maybe_resize_hash_table): * src/xselect.c (x_clipboard_manager_save_all): Use message, not Fmessage, since Fmessage's power isn't needed here. * src/process.c (Fmake_network_process): Reword message to avoid %s. * src/xdisp.c (vmessage): Document restrictions on message contents. (message_nolog) [false]: Remove unused code. --- src/alloc.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/alloc.c') diff --git a/src/alloc.c b/src/alloc.c index 030c6e06ba8..14baf291bd8 100644 --- a/src/alloc.c +++ b/src/alloc.c @@ -4542,9 +4542,9 @@ DEFUN ("gc-status", Fgc_status, Sgc_status, 0, 0, "", Lisp_Object zombie_list = Qnil; for (int i = 0; i < min (MAX_ZOMBIES, nzombies); i++) zombie_list = Fcons (zombies[i], zombie_list); - return CALLN (Fmessage, - build_string ("%d GCs, avg live/zombies = %.2f/%.2f" - " (%f%%), max %d/%d\nzombies: %S"), + AUTO_STRING (format, ("%d GCs, avg live/zombies = %.2f/%.2f (%f%%)," + " max %d/%d\nzombies: %S")); + return CALLN (Fmessage, format, make_number (ngcs), make_float (avg_live), make_float (avg_zombies), make_float (avg_zombies / avg_live / 100), -- cgit v1.2.1