(error): Don't use result of strerror_r call directly since at least
authordrepper <drepper>
Mon, 16 Nov 1998 11:56:12 +0000 (11:56 +0000)
committerdrepper <drepper>
Mon, 16 Nov 1998 11:56:12 +0000 (11:56 +0000)
DEC Unix has a wrong return type.

misc/error.c

index ca7f3b4..2af2cc5 100644 (file)
@@ -157,7 +157,10 @@ error (status, errnum, message, va_alist)
     {
 #if defined HAVE_STRERROR_R || defined _LIBC
       char errbuf[1024];
-      fprintf (stderr, ": %s", __strerror_r (errnum, errbuf, sizeof errbuf));
+      /* Don't use __strerror_r's return value because on some systems
+        (at least DEC UNIX 4.0[A-D]) strerror_r returns `int'.  */
+      __strerror_r (errnum, errbuf, sizeof errbuf);
+      fprintf (stderr, ": %s", errbuf);
 #else
       fprintf (stderr, ": %s", strerror (errnum));
 #endif