From 66bd43d1d38864fc5051887823dd9bea2c24fa27 Mon Sep 17 00:00:00 2001 From: Kenichi Handa Date: Mon, 15 Jun 2009 13:21:14 +0000 Subject: [PATCH] (status_message): Fix previous change. Be sure to decode a localized string. --- src/ChangeLog | 5 +++++ src/process.c | 19 ++++++++++++++----- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index 87784746b9..373341d39a 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2009-06-15 Kenichi Handa + + * process.c (status_message): Fix previous change. Be sure to + decode a localized string. + 2009-06-15 YAMAMOTO Mitsuharu * xterm.c (x_delete_terminal): Put previous change in #if 0 and diff --git a/src/process.c b/src/process.c index 2471ee187b..08030c944d 100644 --- a/src/process.c +++ b/src/process.c @@ -464,15 +464,24 @@ status_message (p) if (EQ (symbol, Qsignal) || EQ (symbol, Qstop)) { char *signame; - int c; synchronize_system_messages_locale (); signame = strsignal (code); if (signame == 0) - signame = "unknown"; - string = build_string (signame); + string = build_string ("unknown"); + else + { + int c1, c2; + + string = make_unibyte_string (signame, strlen (signame)); + if (! NILP (Vlocale_coding_system)) + string = (code_convert_string_norecord + (string, Vlocale_coding_system, 0)); + c1 = STRING_CHAR ((char *) SDATA (string), 0); + c2 = DOWNCASE (c1); + if (c1 != c2) + Faset (string, 0, make_number (c2)); + } string2 = build_string (coredump ? " (core dumped)\n" : "\n"); - c = STRING_CHAR ((char *) SDATA (string), 0); - Faset (string, 0, make_number (DOWNCASE (c))); return concat2 (string, string2); } else if (EQ (symbol, Qexit)) -- 2.20.1