Преглед на файлове

stbi__stdio_eof() should check ferror(), too.

Otherwise with filesystem errors, you might end up with a short read but
believe there's still more to read from the file, causing infinite loops.
Ryan C. Gordon преди 5 години
родител
ревизия
385b5d3cda
променени са 1 файла, в които са добавени 1 реда и са изтрити 1 реда
  1. 1 1
      stb_image.h

+ 1 - 1
stb_image.h

@@ -799,7 +799,7 @@ static void stbi__stdio_skip(void *user, int n)
 
 
 static int stbi__stdio_eof(void *user)
 static int stbi__stdio_eof(void *user)
 {
 {
-   return feof((FILE*) user);
+   return feof((FILE*) user) || ferror((FILE *) user);
 }
 }
 
 
 static stbi_io_callbacks stbi__stdio_callbacks =
 static stbi_io_callbacks stbi__stdio_callbacks =