File eog-pixeldim.patch of Package eog

Index: libeog/eog-image.c
===================================================================
--- libeog/eog-image.c.orig
+++ libeog/eog-image.c
@@ -356,7 +356,11 @@ update_exif_data (EogImage *image)
 	entry = exif_content_get_entry (priv->exif->ifd [EXIF_IFD_EXIF], EXIF_TAG_PIXEL_X_DIMENSION);
 	if (entry != NULL && (priv->width >= 0)) {
 		if (entry->format == EXIF_FORMAT_LONG)
-			exif_set_long (entry->data, bo, priv->width);
+            if (entry->format == EXIF_FORMAT_LONG)
+                exif_set_long (entry->data, bo, priv->width);
+ 		if (entry->format == EXIF_FORMAT_SHORT)
+ 			exif_set_short (entry->data, bo, priv->width);
+ 		/* other number formats should not happen */
 		else if (entry->format == EXIF_FORMAT_SHORT)
 			exif_set_short (entry->data, bo, priv->width);
 		else
@@ -366,7 +370,11 @@ update_exif_data (EogImage *image)
 	entry = exif_content_get_entry (priv->exif->ifd [EXIF_IFD_EXIF], EXIF_TAG_PIXEL_Y_DIMENSION);
 	if (entry != NULL && (priv->height >= 0)) {
 		if (entry->format == EXIF_FORMAT_LONG)
-			exif_set_long (entry->data, bo, priv->height);
+            if (entry->format == EXIF_FORMAT_LONG)
+                exif_set_long (entry->data, bo, priv->height);
+ 		if (entry->format == EXIF_FORMAT_SHORT)
+ 			exif_set_short (entry->data, bo, priv->height);
+ 		/* other number formats should not happen */
 		else if (entry->format == EXIF_FORMAT_SHORT)
 			exif_set_short (entry->data, bo, priv->height);
 		else
openSUSE Build Service is sponsored by