Forráskód Böngészése

LibC: Make sure perror() is consistent about the errno it prints

Andreas Kling 5 éve
szülő
commit
ada1f504fd
1 módosított fájl, 3 hozzáadás és 2 törlés
  1. 3 2
      Libraries/LibC/stdio.cpp

+ 3 - 2
Libraries/LibC/stdio.cpp

@@ -425,8 +425,9 @@ int snprintf(char* buffer, size_t size, const char* fmt, ...)
 
 void perror(const char* s)
 {
-    dbg() << "perror(): " << strerror(errno);
-    fprintf(stderr, "%s: %s\n", s, strerror(errno));
+    int saved_errno = errno;
+    dbg() << "perror(): " << strerror(saved_errno);
+    fprintf(stderr, "%s: %s\n", s, strerror(saved_errno));
 }
 
 FILE* fopen(const char* pathname, const char* mode)