diff options
author | Philip Langdale <philipl@overt.org> | 2013-02-11 07:46:56 -0800 |
---|---|---|
committer | Philip Langdale <philipl@overt.org> | 2013-02-11 07:49:51 -0800 |
commit | 828a5cd1db7a352820f4979095389fb4a24e728f (patch) | |
tree | 55afc386ac58f19de1c2aca3febbb4544644cdf4 | |
parent | f6066a4dbe35372959bae360615b3c36edd84186 (diff) | |
download | gvfs-828a5cd1db7a352820f4979095389fb4a24e728f.tar.gz |
MTP: Fix crash when libmtp operations fails without error message.
-rw-r--r-- | daemon/gvfsbackendmtp.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/daemon/gvfsbackendmtp.c b/daemon/gvfsbackendmtp.c index efd19433..ba040287 100644 --- a/daemon/gvfsbackendmtp.c +++ b/daemon/gvfsbackendmtp.c @@ -280,14 +280,20 @@ emit_change_event (gpointer key, static void fail_job (GVfsJob *job, LIBMTP_mtpdevice_t *device) { + const char *text; LIBMTP_error_t *error = LIBMTP_Get_Errorstack (device); + if (error) { + text = g_strrstr (error->error_text, ":") + 1; + } else { + text = _("Unknown error."); + } g_vfs_job_failed (job, G_IO_ERROR, g_vfs_job_is_cancelled (job) ? G_IO_ERROR_CANCELLED : G_IO_ERROR_FAILED, _("libmtp error: %s"), - g_strrstr (error->error_text, ":") + 1); + text); LIBMTP_Clear_Errorstack (device); } |