diff options
Diffstat (limited to 'src/process.c')
| -rw-r--r-- | src/process.c | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/src/process.c b/src/process.c index 2471ee187bf..08030c944df 100644 --- a/src/process.c +++ b/src/process.c | |||
| @@ -464,15 +464,24 @@ status_message (p) | |||
| 464 | if (EQ (symbol, Qsignal) || EQ (symbol, Qstop)) | 464 | if (EQ (symbol, Qsignal) || EQ (symbol, Qstop)) |
| 465 | { | 465 | { |
| 466 | char *signame; | 466 | char *signame; |
| 467 | int c; | ||
| 468 | synchronize_system_messages_locale (); | 467 | synchronize_system_messages_locale (); |
| 469 | signame = strsignal (code); | 468 | signame = strsignal (code); |
| 470 | if (signame == 0) | 469 | if (signame == 0) |
| 471 | signame = "unknown"; | 470 | string = build_string ("unknown"); |
| 472 | string = build_string (signame); | 471 | else |
| 472 | { | ||
| 473 | int c1, c2; | ||
| 474 | |||
| 475 | string = make_unibyte_string (signame, strlen (signame)); | ||
| 476 | if (! NILP (Vlocale_coding_system)) | ||
| 477 | string = (code_convert_string_norecord | ||
| 478 | (string, Vlocale_coding_system, 0)); | ||
| 479 | c1 = STRING_CHAR ((char *) SDATA (string), 0); | ||
| 480 | c2 = DOWNCASE (c1); | ||
| 481 | if (c1 != c2) | ||
| 482 | Faset (string, 0, make_number (c2)); | ||
| 483 | } | ||
| 473 | string2 = build_string (coredump ? " (core dumped)\n" : "\n"); | 484 | string2 = build_string (coredump ? " (core dumped)\n" : "\n"); |
| 474 | c = STRING_CHAR ((char *) SDATA (string), 0); | ||
| 475 | Faset (string, 0, make_number (DOWNCASE (c))); | ||
| 476 | return concat2 (string, string2); | 485 | return concat2 (string, string2); |
| 477 | } | 486 | } |
| 478 | else if (EQ (symbol, Qexit)) | 487 | else if (EQ (symbol, Qexit)) |