--- daemon/gvfsbackendgphoto2.c
+++ daemon/gvfsbackendgphoto2.c
@@ -1496,6 +1496,7 @@
   int n;
   CameraStorageInformation *storage_info;
   int num_storage_info;
+  CameraAbilities abilities;
 
   DEBUG ("do_mount %p", gphoto2_backend);
 
@@ -1711,10 +1712,17 @@
   DEBUG ("  can_write = %d", gphoto2_backend->can_write);
   DEBUG ("  can_delete = %d", gphoto2_backend->can_delete);
 
+  gp_camera_get_abilities (gphoto2_backend->camera, &abilities);
+  /* Close the device, but keep the camera device present for easy
+   * faster restarting access. Apple iP* should not be restarted
+   * as they change their filesystems afterwards.
+   */
+  if (!strstr(abilities.model,"Apple"))
+     gp_camera_exit (gphoto2_backend->camera, gphoto2_backend->context);
 
   g_vfs_job_succeeded (G_VFS_JOB (job));
 
