Blob Blame History Raw
diff -up gvfs-1.13.3/configure.ac.gphoto25 gvfs-1.13.3/configure.ac
--- gvfs-1.13.3/configure.ac.gphoto25	2012-07-16 17:57:18.000000000 +0200
+++ gvfs-1.13.3/configure.ac	2012-08-04 20:05:19.466122563 +0200
@@ -436,6 +436,9 @@ if test "x$enable_gphoto2" != "xno" -a \
   if test "x$msg_gphoto2" = "xyes"; then
     if test "x$use_gphoto2" = "xyes"; then
       AC_DEFINE(HAVE_GPHOTO2, 1, [Define to 1 if gphoto2 is available])
+      PKG_CHECK_MODULES(GPHOTO2, libgphoto2 >= 2.5.0,
+         AC_DEFINE(HAVE_GPHOTO25, 1, [Define to 1 if libgphoto2 2.5 is available])
+      )
     else
       if test "x$enable_gphoto2" = "xyes"; then
         AC_MSG_ERROR([Cannot build with gphoto2 support. Need OS tweaks in hal volume monitor.])
diff -up gvfs-1.13.3/daemon/gvfsbackendgphoto2.c.gphoto25 gvfs-1.13.3/daemon/gvfsbackendgphoto2.c
--- gvfs-1.13.3/daemon/gvfsbackendgphoto2.c.gphoto25	2012-07-16 17:31:26.000000000 +0200
+++ gvfs-1.13.3/daemon/gvfsbackendgphoto2.c	2012-08-04 20:02:26.887280094 +0200
@@ -1647,7 +1647,7 @@ do_mount (GVfsBackend *backend,
       return;
     }
 
-  DEBUG ("  '%s' '%s' '%s'",  info.name, info.path, info.library_filename);
+  /*DEBUG ("  '%s' '%s' '%s'",  info.name, info.path, info.library_filename);*/
   
   /* set port */
   rc = gp_camera_set_port_info (gphoto2_backend->camera, info);
@@ -2590,7 +2590,11 @@ do_slow_file_rename_in_same_dir (GVfsBac
         }
     }
 
+#ifdef HAVE_GPHOTO25
+  rc = gp_camera_folder_put_file (gphoto2_backend->camera, dir, new_name, GP_FILE_TYPE_NORMAL, file_dest, gphoto2_backend->context);
+#else
   rc = gp_camera_folder_put_file (gphoto2_backend->camera, dir, file_dest, gphoto2_backend->context);
+#endif
   if (rc != 0)
     goto out;
 
@@ -3222,14 +3226,18 @@ commit_write_handle (GVfsBackendGphoto2
   if (rc != 0)
     goto out;
 
-  gp_file_set_type (file, GP_FILE_TYPE_NORMAL);
   gp_file_set_name (file, write_handle->name);
   gp_file_set_mtime (file, time (NULL));
   gp_file_set_data_and_size (file, 
                              dup_for_gphoto2 (write_handle->data, write_handle->size), 
                              write_handle->size);
   
+#ifdef HAVE_GPHOTO25
+  rc = gp_camera_folder_put_file (gphoto2_backend->camera, write_handle->dir, write_handle->name, GP_FILE_TYPE_NORMAL, file, gphoto2_backend->context);
+#else
+  gp_file_set_type (file, GP_FILE_TYPE_NORMAL);
   rc = gp_camera_folder_put_file (gphoto2_backend->camera, write_handle->dir, file, gphoto2_backend->context);
+#endif
   if (rc != 0)
     {
       gp_file_unref (file);