summaryrefslogtreecommitdiff
path: root/daemon
diff options
context:
space:
mode:
authorRoss Lagerwall <rosslagerwall@gmail.com>2014-09-28 19:59:16 +0100
committerRoss Lagerwall <rosslagerwall@gmail.com>2014-10-17 20:22:26 +0100
commit0dedf40fec26e793692d8e4d2911a157ba7203a4 (patch)
tree2d5511732788be16af81522ca88ee5e226b44616 /daemon
parent5904c6d9614b48311217faac66b4e2f57174ba9d (diff)
downloadgvfs-0dedf40fec26e793692d8e4d2911a157ba7203a4.tar.gz
mtp: Remove fail-during-unmount workaround
Since jobs should now fail properly when an unmount is in progress, remove the mtp backend-specific implementation. https://bugzilla.gnome.org/show_bug.cgi?id=710986
Diffstat (limited to 'daemon')
-rw-r--r--daemon/gvfsbackendmtp.c49
1 files changed, 0 insertions, 49 deletions
diff --git a/daemon/gvfsbackendmtp.c b/daemon/gvfsbackendmtp.c
index 9f1d84de..63a213b4 100644
--- a/daemon/gvfsbackendmtp.c
+++ b/daemon/gvfsbackendmtp.c
@@ -371,18 +371,6 @@ remove_cache_entry_by_id (GVfsBackendMtp *backend,
}
-#define FAIL_DURING_UNMOUNT() \
- if (g_atomic_int_get (&G_VFS_BACKEND_MTP(backend)->unmount_started)) { \
- DEBUG ("(I) aborting due to unmount\n"); \
- g_vfs_job_failed_literal (G_VFS_JOB (job), \
- G_IO_ERROR, G_IO_ERROR_CLOSED, \
- _("The connection is closed")); \
- goto exit; \
- }
-
-
-
-
/************************************************
* Initialization
************************************************/
@@ -1273,8 +1261,6 @@ do_enumerate (GVfsBackend *backend,
g_mutex_lock (&G_VFS_BACKEND_MTP (backend)->mutex);
- FAIL_DURING_UNMOUNT();
-
LIBMTP_mtpdevice_t *device;
device = op_backend->device;
@@ -1371,8 +1357,6 @@ do_query_info (GVfsBackend *backend,
LIBMTP_mtpdevice_t *device;
device = G_VFS_BACKEND_MTP (backend)->device;
- FAIL_DURING_UNMOUNT();
-
if (ne == 2 && elements[1][0] == '\0') {
get_device_info (G_VFS_BACKEND_MTP (backend), info);
} else if (ne < 3) {
@@ -1452,8 +1436,6 @@ do_query_fs_info (GVfsBackend *backend,
gchar **elements = g_strsplit_set (filename, "/", -1);
unsigned int ne = g_strv_length (elements);
- FAIL_DURING_UNMOUNT();
-
LIBMTP_mtpdevice_t *device;
device = G_VFS_BACKEND_MTP (backend)->device;
@@ -1480,7 +1462,6 @@ do_query_fs_info (GVfsBackend *backend,
g_vfs_job_succeeded (G_VFS_JOB (job));
- exit:
g_strfreev (elements);
g_mutex_unlock (&G_VFS_BACKEND_MTP (backend)->mutex);
@@ -1525,8 +1506,6 @@ do_make_directory (GVfsBackend *backend,
gchar **elements = g_strsplit_set (filename, "/", -1);
unsigned int ne = g_strv_length (elements);
- FAIL_DURING_UNMOUNT();
-
if (ne < 3) {
g_vfs_job_failed_literal (G_VFS_JOB (job),
G_IO_ERROR, G_IO_ERROR_PERMISSION_DENIED,
@@ -1590,8 +1569,6 @@ do_pull (GVfsBackend *backend,
GFileInfo *local_info = NULL;
GFileInfo *info = NULL;
- FAIL_DURING_UNMOUNT();
-
CacheEntry *entry = get_cache_entry (G_VFS_BACKEND_MTP (backend), source);
if (entry == NULL) {
g_vfs_job_failed_literal (G_VFS_JOB (job),
@@ -1740,8 +1717,6 @@ do_push (GVfsBackend *backend,
gchar **elements = g_strsplit_set (destination, "/", -1);
unsigned int ne = g_strv_length (elements);
- FAIL_DURING_UNMOUNT();
-
if (ne < 3) {
g_vfs_job_failed_literal (G_VFS_JOB (job),
G_IO_ERROR, G_IO_ERROR_PERMISSION_DENIED,
@@ -1895,8 +1870,6 @@ do_delete (GVfsBackend *backend,
DEBUG ("(I) do_delete (filename = %s)\n", filename);
g_mutex_lock (&G_VFS_BACKEND_MTP (backend)->mutex);
- FAIL_DURING_UNMOUNT();
-
CacheEntry *entry = get_cache_entry (G_VFS_BACKEND_MTP (backend), filename);
if (entry == NULL) {
g_vfs_job_failed_literal (G_VFS_JOB (job),
@@ -1942,8 +1915,6 @@ do_set_display_name (GVfsBackend *backend,
DEBUG ("(I) do_set_display_name '%s' --> '%s'\n", filename, display_name);
g_mutex_lock (&G_VFS_BACKEND_MTP (backend)->mutex);
- FAIL_DURING_UNMOUNT();
-
CacheEntry *entry = get_cache_entry (G_VFS_BACKEND_MTP (backend), filename);
if (entry == NULL) {
g_vfs_job_failed_literal (G_VFS_JOB (job),
@@ -2011,8 +1982,6 @@ do_open_for_read (GVfsBackend *backend,
DEBUG ("(I) do_open_for_read (%s)\n", filename);
g_mutex_lock (&G_VFS_BACKEND_MTP (backend)->mutex);
- FAIL_DURING_UNMOUNT();
-
CacheEntry *entry = get_cache_entry (G_VFS_BACKEND_MTP (backend), filename);
if (entry == NULL) {
g_vfs_job_failed_literal (G_VFS_JOB (job),
@@ -2072,8 +2041,6 @@ do_open_icon_for_read (GVfsBackend *backend,
DEBUG ("(I) do_open_icon_for_read (%s)\n", icon_id);
g_mutex_lock (&G_VFS_BACKEND_MTP (backend)->mutex);
- FAIL_DURING_UNMOUNT();
-
guint id = strtol (icon_id, NULL, 16);
if (id > 0) {
@@ -2159,8 +2126,6 @@ do_seek_on_read (GVfsBackend *backend,
DEBUG ("(I) do_seek_on_read (%X %lu %ld %u)\n", id, old_offset, offset, type);
g_mutex_lock (&G_VFS_BACKEND_MTP (backend)->mutex);
- FAIL_DURING_UNMOUNT();
-
if (type == G_SEEK_END) {
offset = size + offset;
} else if (type == G_SEEK_CUR) {
@@ -2198,8 +2163,6 @@ do_read (GVfsBackend *backend,
DEBUG ("(I) do_read (%X %lu %lu)\n", id, offset, bytes_requested);
g_mutex_lock (&G_VFS_BACKEND_MTP (backend)->mutex);
- FAIL_DURING_UNMOUNT();
-
uint32_t actual;
if (handle->handle_type == HANDLE_FILE) {
#if HAVE_LIBMTP_1_1_6
@@ -2283,8 +2246,6 @@ do_create (GVfsBackend *backend,
gchar **elements = g_strsplit_set (filename, "/", -1);
unsigned int ne = g_strv_length (elements);
- FAIL_DURING_UNMOUNT();
-
if (ne < 3) {
g_vfs_job_failed_literal (G_VFS_JOB (job),
G_IO_ERROR, G_IO_ERROR_PERMISSION_DENIED,
@@ -2367,8 +2328,6 @@ do_append_to (GVfsBackend *backend,
DEBUG ("(I) do_append_to (%s)\n", filename);
g_mutex_lock (&G_VFS_BACKEND_MTP (backend)->mutex);
- FAIL_DURING_UNMOUNT();
-
CacheEntry *entry = get_cache_entry (G_VFS_BACKEND_MTP (backend), filename);
if (entry == NULL) {
g_vfs_job_failed_literal (G_VFS_JOB (job),
@@ -2437,8 +2396,6 @@ do_replace (GVfsBackend *backend,
DEBUG ("(I) do_replace (%s)\n", filename);
g_mutex_lock (&G_VFS_BACKEND_MTP (backend)->mutex);
- FAIL_DURING_UNMOUNT();
-
CacheEntry *entry = get_cache_entry (G_VFS_BACKEND_MTP (backend), filename);
if (entry == NULL) {
g_mutex_unlock (&G_VFS_BACKEND_MTP (backend)->mutex);
@@ -2508,8 +2465,6 @@ do_write (GVfsBackend *backend,
DEBUG ("(I) do_write (%X %lu %lu)\n", id, offset, buffer_size);
g_mutex_lock (&G_VFS_BACKEND_MTP (backend)->mutex);
- FAIL_DURING_UNMOUNT();
-
int ret = LIBMTP_SendPartialObject (G_VFS_BACKEND_MTP (backend)->device, id, offset,
(unsigned char *)buffer, buffer_size);
if (ret != 0) {
@@ -2543,8 +2498,6 @@ do_seek_on_write (GVfsBackend *backend,
DEBUG ("(I) do_seek_on_write (%X %lu %ld %u)\n", id, old_offset, offset, type);
g_mutex_lock (&G_VFS_BACKEND_MTP (backend)->mutex);
- FAIL_DURING_UNMOUNT();
-
if (type == G_SEEK_END) {
offset = size + offset;
} else if (type == G_SEEK_CUR) {
@@ -2603,8 +2556,6 @@ do_close_write (GVfsBackend *backend,
RWHandle *handle = opaque_handle;
- FAIL_DURING_UNMOUNT();
-
int ret = LIBMTP_EndEditObject (G_VFS_BACKEND_MTP (backend)->device, handle->id);
if (ret != 0) {
fail_job (G_VFS_JOB (job), G_VFS_BACKEND_MTP (backend)->device);