summaryrefslogtreecommitdiffstats
path: root/thirdparty/libpng/pngset.c
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2017-07-22 18:42:17 +0200
committerRémi Verschelde <rverschelde@gmail.com>2017-07-22 18:42:20 +0200
commit492999a33b389ac6ddfa0cb80c78409bd2d54e1c (patch)
treeb617b8a582ad6039e17e83efedd07047aa32d046 /thirdparty/libpng/pngset.c
parent8495acc510e54c0d148b9d97c3f78f22ce16fa15 (diff)
downloadredot-engine-492999a33b389ac6ddfa0cb80c78409bd2d54e1c.tar.gz
libpng: Update to upstream version 1.6.31rc01
Fixes various issues with 1.6.30, especially ARM build. Supersedes change in #9722.
Diffstat (limited to 'thirdparty/libpng/pngset.c')
-rw-r--r--thirdparty/libpng/pngset.c35
1 files changed, 34 insertions, 1 deletions
diff --git a/thirdparty/libpng/pngset.c b/thirdparty/libpng/pngset.c
index fb495ac3fb..998473557f 100644
--- a/thirdparty/libpng/pngset.c
+++ b/thirdparty/libpng/pngset.c
@@ -1,7 +1,7 @@
/* pngset.c - storage of image information into info struct
*
- * Last changed in libpng 1.6.30 [(PENDING RELEASE)]
+ * Last changed in libpng 1.6.30 [June 28, 2017]
* Copyright (c) 1998-2017 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
@@ -134,6 +134,39 @@ png_set_cHRM_XYZ(png_const_structrp png_ptr, png_inforp info_ptr, double red_X,
#endif /* cHRM */
+#ifdef PNG_eXIf_SUPPORTED
+void PNGAPI
+png_set_eXIf(png_const_structrp png_ptr, png_inforp info_ptr,
+ const png_bytep eXIf_buf)
+{
+ int i;
+
+ png_debug1(1, "in %s storage function", "eXIf");
+
+ if (png_ptr == NULL || info_ptr == NULL)
+ return;
+
+ png_free_data(png_ptr, info_ptr, PNG_FREE_EXIF, 0);
+
+ info_ptr->exif = png_voidcast(png_bytep, png_malloc_warn(png_ptr,
+ info_ptr->num_exif));
+
+ if (info_ptr->exif == NULL)
+ {
+ png_warning(png_ptr, "Insufficient memory for eXIf chunk data");
+
+ return;
+ }
+
+ info_ptr->free_me |= PNG_FREE_EXIF;
+
+ for (i = 0; i < info_ptr->num_exif; i++)
+ info_ptr->exif[i] = eXIf_buf[i];
+
+ info_ptr->valid |= PNG_INFO_eXIf;
+}
+#endif /* eXIf */
+
#ifdef PNG_gAMA_SUPPORTED
void PNGFAPI
png_set_gAMA_fixed(png_const_structrp png_ptr, png_inforp info_ptr,