[eog] Fix build breakage due to void pointer arithmetic



commit 84c746b2b23e8a0b80ee9e7f18a4414707cc8002
Author: Felix Riemann <friemann gnome org>
Date:   Tue Nov 6 19:08:45 2012 +0100

    Fix build breakage due to void pointer arithmetic
    
    With recent gnome-common the build fails due to the arithmetics
    using void pointers. Use the correct pointers to fix that.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=687755

 src/eog-metadata-reader-jpg.c |    6 ++++--
 src/eog-metadata-reader-png.c |    8 ++++----
 2 files changed, 8 insertions(+), 6 deletions(-)
---
diff --git a/src/eog-metadata-reader-jpg.c b/src/eog-metadata-reader-jpg.c
index 9598f67..b21cd67 100644
--- a/src/eog-metadata-reader-jpg.c
+++ b/src/eog-metadata-reader-jpg.c
@@ -488,7 +488,7 @@ eog_metadata_reader_jpg_get_xmp_data (EogMetadataReaderJpg *emr )
 	priv = emr->priv;
 
 	if (priv->xmp_chunk != NULL) {
-		xmp = xmp_new (priv->xmp_chunk+EOG_XMP_OFFSET,
+		xmp = xmp_new (((const char*)priv->xmp_chunk)+EOG_XMP_OFFSET,
 			       priv->xmp_len-EOG_XMP_OFFSET);
 	}
 
@@ -513,7 +513,9 @@ eog_metadata_reader_jpg_get_icc_profile (EogMetadataReaderJpg *emr)
 	priv = emr->priv;
 
 	if (priv->icc_chunk) {
-		profile = cmsOpenProfileFromMem(priv->icc_chunk + 14, priv->icc_len - 14);
+		profile = cmsOpenProfileFromMem(
+		                            ((const char*)priv->icc_chunk) + 14,
+		                            priv->icc_len - 14);
 
 		if (profile) {
 			eog_debug_message (DEBUG_LCMS, "JPEG has ICC profile");
diff --git a/src/eog-metadata-reader-png.c b/src/eog-metadata-reader-png.c
index ec5994d..b9044ad 100644
--- a/src/eog-metadata-reader-png.c
+++ b/src/eog-metadata-reader-png.c
@@ -472,7 +472,7 @@ eog_metadata_reader_png_get_xmp_data (EogMetadataReaderPng *emr )
 	priv = emr->priv;
 
 	if (priv->xmp_chunk != NULL) {
-		xmp = xmp_new (priv->xmp_chunk+EOG_XMP_OFFSET,
+		xmp = xmp_new ((const char*)priv->xmp_chunk+EOG_XMP_OFFSET,
 			       priv->xmp_len-EOG_XMP_OFFSET);
 	}
 
@@ -483,7 +483,7 @@ eog_metadata_reader_png_get_xmp_data (EogMetadataReaderPng *emr )
 #ifdef HAVE_LCMS
 
 #define EXTRACT_DOUBLE_UINT_BLOCK_OFFSET(chunk,offset,divider) \
-		(double)(GUINT32_FROM_BE(*((guint32*)((chunk)+((offset)*4))))/(double)(divider))
+		(double)(GUINT32_FROM_BE(*((((guint32*)chunk + offset))))/(double)(divider))
 
 /* This is the amount of memory the inflate output buffer gets increased by
  * while decompressing the ICC profile */
@@ -523,7 +523,7 @@ eog_metadata_reader_png_get_icc_profile (EogMetadataReaderPng *emr)
 		++offset; //offset now points to the start of the deflated data
 
 		/* Prepare the zlib data structure for decompression */
-		zstr.next_in = priv->icc_chunk + offset;
+		zstr.next_in = (guchar*)priv->icc_chunk + offset;
 		zstr.avail_in = priv->icc_len - offset;
 		if (inflateInit (&zstr) != Z_OK) {
 			return NULL;
@@ -551,7 +551,7 @@ eog_metadata_reader_png_get_icc_profile (EogMetadataReaderPng *emr)
 				}
 				outbuf = g_realloc(outbuf, new_size);
 				zstr.avail_out = EOG_ICC_INFLATE_BUFFER_STEP;
-				zstr.next_out = outbuf + zstr.total_out;
+				zstr.next_out = (Bytef*)outbuf + zstr.total_out;
 			}
 			z_ret = inflate (&zstr, Z_SYNC_FLUSH);
 		} while (z_ret == Z_OK);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]