#include <tny-fs-stream.h>
#include <tny-camel-account.h>
#include <tny-status.h>
+#include <tny-camel-send-queue.h>
#include <tny-camel-transport-account.h>
#include <tny-camel-imap-store-account.h>
#include <tny-camel-pop-store-account.h>
-
+#include <locale.h>
#include <modest-defs.h>
#include "modest-utils.h"
#include "modest-platform.h"
break;
}
- from =
- modest_account_mgr_get_from_string (mgr, node->data, NULL);
-
- if (from) {
- gchar *from_email =
- modest_text_utils_get_email_address (from);
- gchar *from_header_email =
- modest_text_utils_get_email_address (from_header);
-
- if (from_email && from_header_email) {
- if (!modest_text_utils_utf8_strcmp (from_header_email, from_email, TRUE)) {
- account_name = g_strdup (node->data);
- g_free (from);
- g_free (from_email);
- break;
- }
- }
- g_free (from_email);
- g_free (from_header_email);
- g_free (from);
- }
-
transport_account = modest_account_mgr_get_server_account_name (modest_runtime_get_account_mgr (),
(const gchar *) node->data,
TNY_ACCOUNT_TYPE_TRANSPORT);
}
if (mailbox && *mailbox)
break;
+
+ from =
+ modest_account_mgr_get_from_string (mgr, node->data, NULL);
+
+ if (from) {
+ gchar *from_email =
+ modest_text_utils_get_email_address (from);
+ gchar *from_header_email =
+ modest_text_utils_get_email_address (from_header);
+
+ if (from_email && from_header_email) {
+ if (!modest_text_utils_utf8_strcmp (from_header_email, from_email, TRUE)) {
+ account_name = g_strdup (node->data);
+ g_free (from);
+ g_free (from_email);
+ break;
+ }
+ }
+ g_free (from_email);
+ g_free (from_header_email);
+ g_free (from);
+ }
+
}
g_slist_foreach (accounts, (GFunc) g_free, NULL);
gchar **parts, **node;
if (from_lc_messages) {
- env_list = getenv ("LC_MESSAGES");
+ env_list = setlocale (LC_MESSAGES, NULL);
} else {
env_list = getenv ("LANG");
}
g_free (notification_data->from);
g_free (notification_data->subject);
g_free (notification_data->uri);
+
+ g_slice_free (ModestMsgNotificationData, notification_data);
}
void
g_list_foreach (notification_list, free_notification_data, NULL);
g_list_free (notification_list);
}
+
+void
+modest_utils_flush_send_queue (const gchar *account_id)
+{
+ TnyTransportAccount *account;
+
+ /* Get the transport account */
+ account = (TnyTransportAccount *)
+ modest_tny_account_store_get_server_account (modest_runtime_get_account_store (),
+ account_id,
+ TNY_ACCOUNT_TYPE_TRANSPORT);
+ if (account) {
+ ModestMailOperation *wakeup_op;
+ ModestTnySendQueue *send_queue = modest_runtime_get_send_queue (account, TRUE);
+
+ /* Flush it! */
+ wakeup_op = modest_mail_operation_new (NULL);
+ modest_mail_operation_queue_add (modest_runtime_get_mail_operation_queue (),
+ wakeup_op);
+ modest_mail_operation_queue_wakeup (wakeup_op, send_queue);
+
+ g_object_unref (account);
+ }
+}