diff options
Diffstat (limited to 'src/emess.c')
| -rw-r--r-- | src/emess.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/src/emess.c b/src/emess.c index 0c7f6c9e..7b6ebf75 100644 --- a/src/emess.c +++ b/src/emess.c @@ -37,13 +37,18 @@ emess(int code, char *fmt, ...) { putc('\n', stderr); /* if |code|==2, print errno code data */ if (code == 2 || code == -2) - (void)fprintf(stderr, "Sys errno: %d: %s\n", - errno, + { + int my_errno = errno; #ifdef HAVE_STRERROR - strerror(errno)); -#else - "<system mess. texts unavail.>"); + const char* my_strerror = strerror(my_errno); +#endif +#ifndef HAVE_STRERROR + const char* my_strerror = "<system mess. texts unavail.>"; #endif + (void)fprintf(stderr, "Sys errno: %d: %s\n", + my_errno, my_strerror); + } + /* post remainder of call data */ (void)vfprintf(stderr,fmt,args); va_end(args); |
