diff options
Diffstat (limited to 'mail/e-mail-request.c')
-rw-r--r-- | mail/e-mail-request.c | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/mail/e-mail-request.c b/mail/e-mail-request.c index 0f185c2031..aee9c9cc91 100644 --- a/mail/e-mail-request.c +++ b/mail/e-mail-request.c @@ -54,6 +54,7 @@ struct _EMailRequestPrivate { GHashTable *uri_query; gchar *uri_base; + gchar *full_uri; gchar *ret_mime_type; }; @@ -105,6 +106,7 @@ handle_mail_request (GSimpleAsyncResult *res, context.message_uid = part_list->message_uid; context.folder = part_list->folder; context.parts = part_list->list; + context.uri = request->priv->full_uri; if (context.mode == E_MAIL_FORMATTER_MODE_PRINTING) formatter = e_mail_formatter_print_new (); @@ -285,25 +287,22 @@ mail_request_finalize (GObject *object) g_clear_object (&request->priv->output_stream); - if (request->priv->mime_type) { - g_free (request->priv->mime_type); - request->priv->mime_type = NULL; - } + g_free (request->priv->mime_type); + request->priv->mime_type = NULL; if (request->priv->uri_query) { g_hash_table_destroy (request->priv->uri_query); request->priv->uri_query = NULL; } - if (request->priv->ret_mime_type) { - g_free (request->priv->ret_mime_type); - request->priv->ret_mime_type = NULL; - } + g_free (request->priv->ret_mime_type); + request->priv->ret_mime_type = NULL; - if (request->priv->uri_base) { - g_free (request->priv->uri_base); - request->priv->uri_base = NULL; - } + g_free (request->priv->uri_base); + request->priv->uri_base = NULL; + + g_free (request->priv->full_uri); + request->priv->full_uri = NULL; G_OBJECT_CLASS (e_mail_request_parent_class)->finalize (object); } @@ -337,6 +336,7 @@ mail_request_send_async (SoupRequest *request, emr->priv->uri_query = NULL; } + emr->priv->full_uri = soup_uri_to_string (uri, FALSE); uri_str = g_strdup_printf ( "%s://%s%s", uri->scheme, uri->host, uri->path); emr->priv->uri_base = uri_str; |