{
if (!attachments)
return NULL;
-
+
gchar *attachments_str = g_strdup("");
-
+
GSList *iter = attachments;
while (iter)
{
if (iter->data) {
- gchar *tmp = g_strconcat(attachments_str, ",", (gchar *) (iter->data), NULL);
+ gchar *escaped;
+ gchar *tmp;
+ escaped = g_uri_escape_string ((const gchar *) (iter->data), NULL, TRUE);
+ tmp = g_strconcat(attachments_str, ",", escaped, NULL);
+ g_free(escaped);
g_free(attachments_str);
attachments_str = tmp;
}
-
iter = g_slist_next(iter);
}
-
return attachments_str;
}
-
+
/**
* libmodest_dbus_client_mail_to:
* @osso_context: a valid #osso_context_t object.
gboolean
libmodest_dbus_client_mail_to (osso_context_t *osso_context, const gchar *mailto_uri)
{
- osso_rpc_t retval;
+ osso_rpc_t retval = { 0 };
const osso_return_t ret = osso_rpc_run_with_defaults(osso_context,
MODEST_DBUS_NAME,
MODEST_DBUS_METHOD_MAIL_TO, &retval,
libmodest_dbus_client_compose_mail (osso_context_t *osso_context, const gchar *to, const gchar *cc,
const gchar *bcc, const gchar* subject, const gchar* body, GSList *attachments)
{
- osso_rpc_t retval;
-
+ osso_rpc_t retval = { 0 };
+
gchar *attachments_str = get_attachments_string(attachments);
- const osso_return_t ret = osso_rpc_run_with_defaults(osso_context,
+ const osso_return_t ret = osso_rpc_run_with_defaults(osso_context,
MODEST_DBUS_NAME,
MODEST_DBUS_METHOD_COMPOSE_MAIL, &retval,
DBUS_TYPE_STRING, to,
DBUS_TYPE_STRING, body,
DBUS_TYPE_STRING, attachments_str,
DBUS_TYPE_INVALID);
-
+
+ g_free (attachments_str);
+
if (ret != OSSO_OK) {
printf("debug: %s: osso_rpc_run() failed.\n", __FUNCTION__);
return FALSE;
} else {
printf("debug: %s: osso_rpc_run() succeeded.\n", __FUNCTION__);
}
-
+
osso_rpc_free_val(&retval);
- g_free (attachments_str);
-
+
return TRUE;
}
gboolean
libmodest_dbus_client_open_message (osso_context_t *osso_context, const gchar *mail_uri)
{
- osso_rpc_t retval;
+ osso_rpc_t retval = { 0 };
const osso_return_t ret = osso_rpc_run_with_defaults(osso_context,
MODEST_DBUS_NAME,
MODEST_DBUS_METHOD_OPEN_MESSAGE, &retval,
gboolean
libmodest_dbus_client_send_and_receive (osso_context_t *osso_context)
{
- osso_rpc_t retval;
+ osso_rpc_t retval = { 0 };
const osso_return_t ret = osso_rpc_run_with_defaults(osso_context,
MODEST_DBUS_NAME,
MODEST_DBUS_METHOD_SEND_RECEIVE, &retval,
gboolean
libmodest_dbus_client_open_default_inbox (osso_context_t *osso_context)
{
- osso_rpc_t retval;
+ osso_rpc_t retval = { 0 };
const osso_return_t ret = osso_rpc_run_with_defaults(osso_context,
MODEST_DBUS_NAME,
MODEST_DBUS_METHOD_OPEN_DEFAULT_INBOX, &retval,
libmodest_dbus_client_open_account (osso_context_t *osso_context,
const gchar *account_id)
{
- osso_rpc_t retval;
+ osso_rpc_t retval = { 0 };
const osso_return_t ret =
osso_rpc_run_with_defaults(osso_context,
MODEST_DBUS_NAME,
libmodest_dbus_client_delete_message (osso_context_t *osso_ctx,
const char *msg_uri)
{
- osso_rpc_t retval;
+ osso_rpc_t retval = { 0 };
osso_return_t ret;
ret = osso_rpc_run_with_defaults (osso_ctx,