mesa/main/debug: Check if we successfully reopened the ppm file.
authorRafael Antognolli <rafael.antognolli@intel.com>
Mon, 5 Jun 2017 18:04:26 +0000 (11:04 -0700)
committerRafael Antognolli <rafael.antognolli@intel.com>
Fri, 9 Jun 2017 17:21:16 +0000 (10:21 -0700)
Since we created the file, we should be able to reopen it for appending, but
some weird filesystem error could cause that to be false. So simply check
whether we could reopen it or not.

CID: 1177144
Signed-off-by: Rafael Antognolli <rafael.antognolli@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
src/mesa/main/debug.c

index 7b76a94969871df918ab6723341c2c4353ed9d57..d7e0143a8f62453233755338708dd2219a7dcef6 100644 (file)
@@ -235,6 +235,11 @@ write_ppm(const char *filename, const GLubyte *buffer, int width, int height,
       fprintf(f,"255\n");
       fclose(f);
       f = fopen( filename, "ab" );  /* reopen in binary append mode */
+      if (!f) {
+         fprintf(stderr, "Error while reopening %s in write_ppm()\n",
+                 filename);
+         return;
+      }
       for (y=0; y < height; y++) {
          for (x = 0; x < width; x++) {
             int yy = invert ? (height - 1 - y) : y;