ImBuf: Fix compilation error with older libpng
authorSergey Sharybin <sergey.vfx@gmail.com>
Sat, 11 Jul 2015 17:18:20 +0000 (19:18 +0200)
committerSergey Sharybin <sergey.vfx@gmail.com>
Sat, 11 Jul 2015 17:18:20 +0000 (19:18 +0200)
Older libpng library does not use const pointer to a memory.

The exact version is a bit of a guess here, maybe needs tweaks to it tho.

source/blender/imbuf/intern/png.c

index b96424dd319a4ea1ed882b83e5ef3a79f6ee77ae..77a0f1dc1dbbd60092653faa804f0358ede5ae6b 100644 (file)
@@ -71,7 +71,14 @@ int imb_is_a_png(const unsigned char *mem)
 {
        int ret_val = 0;
 
-       if (mem) ret_val = !png_sig_cmp(mem, 0, 8);
+       if (mem) {
+#if (PNG_LIBPNG_VER_MAJOR == 1) && (PNG_LIBPNG_VER_MINOR == 2)
+               /* Older version of libpng doesn't use const pointer to memory. */
+               ret_val = !png_sig_cmp((png_bytep)mem, 0, 8);
+#else
+               ret_val = !png_sig_cmp(mem, 0, 8);
+#endif
+       }
        return(ret_val);
 }