diff --speed-large-files --minimal -Nru nautilus-2.9.1.orig/configure nautilus-2.9.1/configure
--- nautilus-2.9.1.orig/configure	2004-11-25 00:08:39.000000000 +1100
+++ nautilus-2.9.1/configure	2004-12-09 11:46:32.560563072 +1100
@@ -1522,7 +1522,7 @@
 RSVG_REQUIRED=2.0.1
 XML_REQUIRED=2.4.7
 STARTUP_NOTIFICATION_REQUIRED=0.5
-EXIF_REQUIRED=0.5.12
+EXIF_REQUIRED=0.6.0
 
 
 
@@ -20419,7 +20363,7 @@
 	glib-2.0 >= $GLIB_REQUIRED \
 	gnome-desktop-2.0 >= $GNOME_DESKTOP_REQUIRED \
 	gnome-vfs-2.0 >= $GNOME_VFS_REQUIRED \
-	ORBit-2.0 >= $ORBIT_REQUIRED\
+	ORBit-2.0 >= $ORBIT_REQUIRED \
 	pango >= $PANGO_REQUIRED \
 	gtk+-2.0 >= $GTK_REQUIRED \
 	libart-2.0 >= $ART_REQUIRED \
@@ -20436,7 +20380,7 @@
 	glib-2.0 >= $GLIB_REQUIRED \
 	gnome-desktop-2.0 >= $GNOME_DESKTOP_REQUIRED \
 	gnome-vfs-2.0 >= $GNOME_VFS_REQUIRED \
-	ORBit-2.0 >= $ORBIT_REQUIRED\
+	ORBit-2.0 >= $ORBIT_REQUIRED \
 	pango >= $PANGO_REQUIRED \
 	gtk+-2.0 >= $GTK_REQUIRED \
 	libart-2.0 >= $ART_REQUIRED \
@@ -20454,7 +20398,7 @@
 	glib-2.0 >= $GLIB_REQUIRED \
 	gnome-desktop-2.0 >= $GNOME_DESKTOP_REQUIRED \
 	gnome-vfs-2.0 >= $GNOME_VFS_REQUIRED \
-	ORBit-2.0 >= $ORBIT_REQUIRED\
+	ORBit-2.0 >= $ORBIT_REQUIRED \
 	pango >= $PANGO_REQUIRED \
 	gtk+-2.0 >= $GTK_REQUIRED \
 	libart-2.0 >= $ART_REQUIRED \
@@ -20477,7 +20421,7 @@
 	glib-2.0 >= $GLIB_REQUIRED \
 	gnome-desktop-2.0 >= $GNOME_DESKTOP_REQUIRED \
 	gnome-vfs-2.0 >= $GNOME_VFS_REQUIRED \
-	ORBit-2.0 >= $ORBIT_REQUIRED\
+	ORBit-2.0 >= $ORBIT_REQUIRED \
 	pango >= $PANGO_REQUIRED \
 	gtk+-2.0 >= $GTK_REQUIRED \
 	libart-2.0 >= $ART_REQUIRED \
@@ -20499,7 +20443,7 @@
 	glib-2.0 >= $GLIB_REQUIRED \
 	gnome-desktop-2.0 >= $GNOME_DESKTOP_REQUIRED \
 	gnome-vfs-2.0 >= $GNOME_VFS_REQUIRED \
-	ORBit-2.0 >= $ORBIT_REQUIRED\
+	ORBit-2.0 >= $ORBIT_REQUIRED \
 	pango >= $PANGO_REQUIRED \
 	gtk+-2.0 >= $GTK_REQUIRED \
 	libart-2.0 >= $ART_REQUIRED \
@@ -20523,7 +20467,7 @@
 	glib-2.0 >= $GLIB_REQUIRED \
 	gnome-desktop-2.0 >= $GNOME_DESKTOP_REQUIRED \
 	gnome-vfs-2.0 >= $GNOME_VFS_REQUIRED \
-	ORBit-2.0 >= $ORBIT_REQUIRED\
+	ORBit-2.0 >= $ORBIT_REQUIRED \
 	pango >= $PANGO_REQUIRED \
 	gtk+-2.0 >= $GTK_REQUIRED \
 	libart-2.0 >= $ART_REQUIRED \
@@ -20554,7 +20498,7 @@
 	glib-2.0 >= $GLIB_REQUIRED \
 	gnome-desktop-2.0 >= $GNOME_DESKTOP_REQUIRED \
 	gnome-vfs-2.0 >= $GNOME_VFS_REQUIRED \
-	ORBit-2.0 >= $ORBIT_REQUIRED\
+	ORBit-2.0 >= $ORBIT_REQUIRED \
 	pango >= $PANGO_REQUIRED \
 	gtk+-2.0 >= $GTK_REQUIRED \
 	libart-2.0 >= $ART_REQUIRED \
@@ -20571,7 +20515,7 @@
 	glib-2.0 >= $GLIB_REQUIRED \
 	gnome-desktop-2.0 >= $GNOME_DESKTOP_REQUIRED \
 	gnome-vfs-2.0 >= $GNOME_VFS_REQUIRED \
-	ORBit-2.0 >= $ORBIT_REQUIRED\
+	ORBit-2.0 >= $ORBIT_REQUIRED \
 	pango >= $PANGO_REQUIRED \
 	gtk+-2.0 >= $GTK_REQUIRED \
 	libart-2.0 >= $ART_REQUIRED \
@@ -24891,8 +24805,8 @@
 
 
 
-echo "$as_me:$LINENO: checking for libExif" >&5
-echo $ECHO_N "checking for libExif... $ECHO_C" >&6
+echo "$as_me:$LINENO: checking for libexif" >&5
+echo $ECHO_N "checking for libexif... $ECHO_C" >&6
 
 
   succeeded=no
@@ -24999,6 +24913,113 @@
 
 fi
 
+echo "$as_me:$LINENO: checking for libexif 0.5.x instead" >&5
+echo $ECHO_N "checking for libexif 0.5.x instead... $ECHO_C" >&6
+
+  succeeded=no
+
+  if test -z "$PKG_CONFIG"; then
+    # Extract the first word of "pkg-config", so it can be a program name with args.
+set dummy pkg-config; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_PKG_CONFIG+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $PKG_CONFIG in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  for ac_exec_ext in '' $ac_executable_extensions; do
+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+done
+
+  test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no"
+  ;;
+esac
+fi
+PKG_CONFIG=$ac_cv_path_PKG_CONFIG
+
+if test -n "$PKG_CONFIG"; then
+  echo "$as_me:$LINENO: result: $PKG_CONFIG" >&5
+echo "${ECHO_T}$PKG_CONFIG" >&6
+else
+  echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  fi
+
+  if test "$PKG_CONFIG" = "no" ; then
+     echo "*** The pkg-config script could not be found. Make sure it is"
+     echo "*** in your path, or set the PKG_CONFIG environment variable"
+     echo "*** to the full path to pkg-config."
+     echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config."
+  else
+     PKG_CONFIG_MIN_VERSION=0.9.0
+     if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then
+        echo "$as_me:$LINENO: checking for libexif >= 0.5.12" >&5
+echo $ECHO_N "checking for libexif >= 0.5.12... $ECHO_C" >&6
+
+        if $PKG_CONFIG --exists "libexif >= 0.5.12" ; then
+            echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+            succeeded=yes
+
+            echo "$as_me:$LINENO: checking EXIF_CFLAGS" >&5
+echo $ECHO_N "checking EXIF_CFLAGS... $ECHO_C" >&6
+            EXIF_CFLAGS=`$PKG_CONFIG --cflags "libexif >= 0.5.12"`
+            echo "$as_me:$LINENO: result: $EXIF_CFLAGS" >&5
+echo "${ECHO_T}$EXIF_CFLAGS" >&6
+
+            echo "$as_me:$LINENO: checking EXIF_LIBS" >&5
+echo $ECHO_N "checking EXIF_LIBS... $ECHO_C" >&6
+            EXIF_LIBS=`$PKG_CONFIG --libs "libexif >= 0.5.12"`
+            echo "$as_me:$LINENO: result: $EXIF_LIBS" >&5
+echo "${ECHO_T}$EXIF_LIBS" >&6
+        else
+            EXIF_CFLAGS=""
+            EXIF_LIBS=""
+            ## If we have a custom action on failure, don't print errors, but
+            ## do set a variable so people can do so.
+            EXIF_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "libexif >= 0.5.12"`
+
+        fi
+
+
+
+     else
+        echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer."
+        echo "*** See http://www.freedesktop.org/software/pkgconfig"
+     fi
+  fi
+
+  if test $succeeded = yes; then
+     have_exif=yes
+  else
+     have_exif=no
+  fi
+
+if test "x$have_exif" = "xyes"; then
+  cat >>confdefs.h <<\_ACEOF
+#define HAVE_FIVE_EXIF 1
+_ACEOF
+
+
+
+fi
+
 
 
 # Check whether --enable-more-warnings or --disable-more-warnings was given.
@@ -26306,11 +26326,6 @@
   *) ac_INSTALL=$ac_top_builddir$INSTALL ;;
   esac
 
-  if test x"$ac_file" != x-; then
-    { echo "$as_me:$LINENO: creating $ac_file" >&5
-echo "$as_me: creating $ac_file" >&6;}
-    rm -f "$ac_file"
-  fi
   # Let's still pretend it is `configure' which instantiates (i.e., don't
   # use $as_me), people would be surprised to read:
   #    /* config.h.  Generated by config.status.  */
@@ -26349,6 +26364,12 @@
 	 fi;;
       esac
     done` || { (exit 1); exit 1; }
+
+  if test x"$ac_file" != x-; then
+    { echo "$as_me:$LINENO: creating $ac_file" >&5
+echo "$as_me: creating $ac_file" >&6;}
+    rm -f "$ac_file"
+  fi
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF
   sed "$ac_vpsub
diff --speed-large-files --minimal -Nru nautilus-2.9.1.orig/configure.in nautilus-2.9.1/configure.in
--- nautilus-2.9.1.orig/configure.in	2004-11-23 02:24:31.000000000 +1100
+++ nautilus-2.9.1/configure.in	2004-12-09 11:45:59.415601872 +1100
@@ -18,7 +18,7 @@
 RSVG_REQUIRED=2.0.1
 XML_REQUIRED=2.4.7
 STARTUP_NOTIFICATION_REQUIRED=0.5
-EXIF_REQUIRED=0.5.12
+EXIF_REQUIRED=0.6.0
 
 AC_SUBST(ART_REQUIRED)
 AC_SUBST(BONOBO_ACTIVATION_REQUIRED)
@@ -79,7 +79,7 @@
 	glib-2.0 >= $GLIB_REQUIRED \
 	gnome-desktop-2.0 >= $GNOME_DESKTOP_REQUIRED \
 	gnome-vfs-2.0 >= $GNOME_VFS_REQUIRED \
-	ORBit-2.0 >= $ORBIT_REQUIRED\
+	ORBit-2.0 >= $ORBIT_REQUIRED \
 	pango >= $PANGO_REQUIRED \
 	gtk+-2.0 >= $GTK_REQUIRED \
 	libart-2.0 >= $ART_REQUIRED \
@@ -211,7 +211,7 @@
 
 dnl exif checking
 
-AC_MSG_CHECKING(for libExif)
+AC_MSG_CHECKING(for libexif)
 
 PKG_CHECK_MODULES(EXIF, libexif >= $EXIF_REQUIRED, have_exif=yes, have_exif=no)
 if test "x$have_exif" = "xyes"; then
@@ -220,6 +220,14 @@
   AC_SUBST(EXIF_LIBS)
 fi
 
+AC_MSG_CHECKING(for libexif 0.5.x)
+PKG_CHECK_MODULES(EXIF, libexif >= 0.5.12, have_exif=yes, have_exif=no)
+if test "x$have_exif" = "xyes"; then
+  AC_DEFINE(HAVE_FIVE_EXIF,1)
+  AC_SUBST(EXIF_CFLAGS)
+  AC_SUBST(EXIF_LIBS)
+fi
+
 dnl ==========================================================================
 
 dnl Turn on the additional warnings last, so -Werror doesn't affect other tests.
diff --speed-large-files --minimal -Nru nautilus-2.9.1.orig/src/nautilus-image-properties-page.c nautilus-2.9.1/src/nautilus-image-properties-page.c
--- nautilus-2.9.1.orig/src/nautilus-image-properties-page.c	2004-11-23 02:24:37.000000000 +1100
+++ nautilus-2.9.1/src/nautilus-image-properties-page.c	2004-12-09 11:56:03.498767272 +1100
@@ -144,13 +144,20 @@
 exif_content_callback (ExifContent *content, gpointer data)
 {
 	struct ExifAttribute *attribute;
+#ifndef HAVE_FIVE_EXIF
+	char val[4096];
+#endif /* HAVE_FIVE_EXIF */
 
 	attribute = (struct ExifAttribute *)data;
 	if (attribute->found) {
 		return;
 	}
-
+#ifndef HAVE_FIVE_EXIF
+        attribute->value = g_strdup (exif_content_get_value (content, attribute->tag, val, 4096));
+#else
         attribute->value = g_strdup (exif_content_get_value (content, attribute->tag));
+#endif /* HAVE_FIVE_EXIF */
+
 	if (attribute->value != NULL) {
 		attribute->found = TRUE;
 	}
