changeset 103363:3fb472c8bc3c

* process.c (status_message): Fix handling of multibyte signal string (Bug#3499).
author Chong Yidong <cyd@stupidchicken.com>
date Tue, 09 Jun 2009 18:26:36 +0000
parents d708c0f7d79c
children e65d75c90986
files src/ChangeLog src/process.c
diffstat 2 files changed, 8 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/ChangeLog	Tue Jun 09 17:56:48 2009 +0000
+++ b/src/ChangeLog	Tue Jun 09 18:26:36 2009 +0000
@@ -1,3 +1,8 @@
+2009-06-09  Dmitry Dzhus  <dima@sphinx.net.ru>  (tiny change)
+
+	* process.c (status_message): Fix handling of multibyte signal
+	string (Bug#3499).
+
 2009-06-09  Jim Meyering  <meyering@redhat.com>
 
 	* xfaces.c (Fx_load_color_file): Avoid array bounds error if the
--- a/src/process.c	Tue Jun 09 17:56:48 2009 +0000
+++ b/src/process.c	Tue Jun 09 18:26:36 2009 +0000
@@ -464,13 +464,15 @@
   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);
       string2 = build_string (coredump ? " (core dumped)\n" : "\n");
-      SSET (string, 0, DOWNCASE (SREF (string, 0)));
+      c = STRING_CHAR ((char *) SDATA (string), 0);
+      Faset (string, 0, make_number (DOWNCASE (c)));
       return concat2 (string, string2);
     }
   else if (EQ (symbol, Qexit))