aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mail/e-http-request.c5
-rw-r--r--mail/e-mail-request.c21
2 files changed, 23 insertions, 3 deletions
diff --git a/mail/e-http-request.c b/mail/e-http-request.c
index a4a35567ed..996a993804 100644
--- a/mail/e-http-request.c
+++ b/mail/e-http-request.c
@@ -188,6 +188,11 @@ handle_http_request (GSimpleAsyncResult *res,
evo_uri = soup_uri_to_string (soup_uri, FALSE);
+ if (camel_debug_start ("emformat:requests")) {
+ printf ("%s: looking for '%s'\n", G_STRFUNC, evo_uri);
+ camel_debug_end ();
+ }
+
/* Remove the "evo-" prefix from scheme */
uri_len = strlen (evo_uri);
uri = NULL;
diff --git a/mail/e-mail-request.c b/mail/e-mail-request.c
index e6338ee744..bfbedc35a1 100644
--- a/mail/e-mail-request.c
+++ b/mail/e-mail-request.c
@@ -82,7 +82,14 @@ handle_mail_request (GSimpleAsyncResult *simple,
registry = e_mail_part_list_get_registry ();
part_list = camel_object_bag_get (registry, request->priv->uri_base);
- g_return_if_fail (part_list != NULL);
+
+ if (camel_debug_start ("emformat:requests")) {
+ printf ("%s: found part-list %p for full_uri '%s'\n", G_STRFUNC, part_list, request->priv->full_uri);
+ camel_debug_end ();
+ }
+
+ if (!part_list)
+ return;
val = g_hash_table_lookup (
request->priv->uri_query, "headers_collapsed");
@@ -131,10 +138,17 @@ handle_mail_request (GSimpleAsyncResult *simple,
part_id = soup_uri_decode (val);
part = e_mail_part_list_ref_part (part_list, part_id);
+ if (!part) {
+ if (camel_debug_start ("emformat:requests")) {
+ printf ("%s: part with id '%s' not found\n", G_STRFUNC, part_id);
+ camel_debug_end ();
+ }
+
+ g_free (part_id);
+ goto no_part;
+ }
g_free (part_id);
- g_return_if_fail (part != NULL);
-
mime_type = g_hash_table_lookup (
request->priv->uri_query, "mime_type");
@@ -171,6 +185,7 @@ handle_mail_request (GSimpleAsyncResult *simple,
context.flags, context.mode, cancellable);
}
+ no_part:
g_clear_object (&output_stream);
g_clear_object (&context.part_list);