diff options
3 files changed, 27 insertions, 4 deletions
diff --git a/src/addressbook/backends/carddav/e-book-backend-carddav.c b/src/addressbook/backends/carddav/e-book-backend-carddav.c index 1030543f8..f395808b5 100644 --- a/src/addressbook/backends/carddav/e-book-backend-carddav.c +++ b/src/addressbook/backends/carddav/e-book-backend-carddav.c @@ -1277,9 +1277,16 @@ ebb_carddav_save_contact_sync (EBookMetaBackend *meta_backend, g_free (new_etag); } else if (uid && vcard_string) { + EBookCache *cache; + + cache = e_book_meta_backend_ref_cache (meta_backend); success = FALSE; - g_propagate_error (error, EC_ERROR_EX (E_CLIENT_ERROR_OTHER_ERROR, - _("Missing information about vCard URL, local cache is possibly incomplete or broken. Remove it, please."))); + + g_propagate_error (error, e_client_error_create_fmt (E_CLIENT_ERROR_OTHER_ERROR, + _("Missing information about component URL, local cache is possibly incomplete or broken. You can try to remove it and restart background evolution-data-server processes. Cache file: %s"), + e_cache_get_filename (E_CACHE (cache)))); + + g_clear_object (&cache); } else { success = FALSE; g_propagate_error (error, EC_ERROR_EX (E_CLIENT_ERROR_OTHER_ERROR, _("Object to save is not a valid vCard"))); diff --git a/src/calendar/backends/caldav/e-cal-backend-caldav.c b/src/calendar/backends/caldav/e-cal-backend-caldav.c index b3ab76257..d2dc889fc 100644 --- a/src/calendar/backends/caldav/e-cal-backend-caldav.c +++ b/src/calendar/backends/caldav/e-cal-backend-caldav.c @@ -1507,8 +1507,16 @@ ecb_caldav_save_component_sync (ECalMetaBackend *meta_backend, g_free (new_etag); } else if (uid && ical_string) { + ECalCache *cache; + + cache = e_cal_meta_backend_ref_cache (meta_backend); success = FALSE; - g_propagate_error (error, ECC_ERROR_EX (E_CAL_CLIENT_ERROR_INVALID_OBJECT, _("Missing information about component URL, local cache is possibly incomplete or broken. Remove it, please."))); + + g_propagate_error (error, e_cal_client_error_create_fmt (E_CAL_CLIENT_ERROR_INVALID_OBJECT, + _("Missing information about component URL, local cache is possibly incomplete or broken. You can try to remove it and restart background evolution-data-server processes. Cache file: %s"), + e_cache_get_filename (E_CACHE (cache)))); + + g_clear_object (&cache); } else { success = FALSE; g_propagate_error (error, ECC_ERROR (E_CAL_CLIENT_ERROR_INVALID_OBJECT)); diff --git a/src/calendar/backends/webdav-notes/e-cal-backend-webdav-notes.c b/src/calendar/backends/webdav-notes/e-cal-backend-webdav-notes.c index 581422d10..fe839d5b0 100644 --- a/src/calendar/backends/webdav-notes/e-cal-backend-webdav-notes.c +++ b/src/calendar/backends/webdav-notes/e-cal-backend-webdav-notes.c @@ -1243,8 +1243,16 @@ ecb_webdav_notes_save_component_sync (ECalMetaBackend *meta_backend, g_free (expected_filename); g_free (new_etag); } else if (uid) { + ECalCache *cache; + + cache = e_cal_meta_backend_ref_cache (meta_backend); success = FALSE; - g_propagate_error (error, ECC_ERROR_EX (E_CAL_CLIENT_ERROR_INVALID_OBJECT, _("Missing information about component URL, local cache is possibly incomplete or broken. Remove it, please."))); + + g_propagate_error (error, e_cal_client_error_create_fmt (E_CAL_CLIENT_ERROR_INVALID_OBJECT, + _("Missing information about component URL, local cache is possibly incomplete or broken. You can try to remove it and restart background evolution-data-server processes. Cache file: %s"), + e_cache_get_filename (E_CACHE (cache)))); + + g_clear_object (&cache); } else { success = FALSE; g_propagate_error (error, ECC_ERROR (E_CAL_CLIENT_ERROR_INVALID_OBJECT)); |