src/java.base/unix/native/libjava/ProcessImpl_md.c

Print this page

        

@@ -246,16 +246,17 @@
 throwIOException(JNIEnv *env, int errnum, const char *defaultDetail)
 {
     const char *detail = defaultDetail;
     char *errmsg;
     size_t fmtsize;
+    char tmpbuf[1024];
     jstring s;
 
     if (errnum != 0) {
-        const char *s = strerror(errnum);
-        if (strcmp(s, "Unknown error") != 0)
-            detail = s;
+        int ret = getErrorString(errnum, tmpbuf, sizeof(tmpbuf));
+        if (ret != EINVAL)
+            detail = tmpbuf;
     }
     /* ASCII Decimal representation uses 2.4 times as many bits as binary. */
     fmtsize = sizeof(IOE_FORMAT) + strlen(detail) + 3 * sizeof(errnum);
     errmsg = NEW(char, fmtsize);
     if (errmsg == NULL)