I would like to propose a patch (attached). It's probably too primitive and requires a rewrite to become event-driven instead of a polling mechanism. But for me it works and I've found another polling part in the code that was already there so maybe the quality loss isn't that big after all ;)
I kindly ask for a review/opinions and feedback. -- Marcin Szewczyk http://wodny.org mailto:marcin.szewc...@wodny.borg <- remove b / usuĊ b xmpp:wo...@ubuntu.pl xmpp:wo...@jabster.pl
--- gvfs-1.22.2-orig/daemon/gvfsbackendobexftp.c 2014-11-07 14:53:26.000000000 +0100 +++ gvfs-1.22.2/daemon/gvfsbackendobexftp.c 2015-05-30 02:08:30.592912133 +0200 @@ -1329,11 +1329,18 @@ { GVfsBackendObexftp *op_backend = G_VFS_BACKEND_OBEXFTP (backend); GError *error = NULL; + gboolean busy = TRUE; g_debug ("+ do_query_info, filename: %s\n", filename); g_mutex_lock (&op_backend->mutex); + while (busy > 0) + { + busy = is_busy (op_backend->session_proxy, G_VFS_JOB (job)); + g_usleep (G_USEC_PER_SEC / 100); + } + if (_query_file_info_helper (backend, filename, info, &error) == FALSE) { g_mutex_unlock (&op_backend->mutex);