#include <camel/camel-sasl.h>
#include <camel/camel-i18n.h>
+#include <camel/camel-utf8.h>
#include <camel/camel-file-utils.h>
#include "camel-imapx-utils.h"
CamelDataWrapper *D;
CamelSasl *A;
gchar buffer[16];
+ gchar *fname = NULL, *encoded = NULL;
CamelException ex = CAMEL_EXCEPTION_INITIALISER;
c(printf("adding command, fmt = '%s'\n", fmt));
case 'f': /* imap folder name */
s = va_arg(ap, gchar *);
c(printf("got folder '%s'\n", s));
- /* FIXME: encode folder name */
- /* FIXME: namespace? */
+ fname = camel_imapx_store_summary_full_from_path(((CamelIMAPXStore *)ic->job->folder->parent_store)->summary, s);
+ if (fname) {
+ encoded = camel_utf8_utf7(fname);
+ g_free (fname);
+ } else
+ encoded = camel_utf8_utf7 (s);
+
camel_stream_printf((CamelStream *)ic->mem, "\"%s\"", s?s:"");
+
+ g_free (encoded);
break;
case 'F': /* IMAP flags set */
f = va_arg(ap, guint32);
camel_imapx_stream_nstring(is, &token, ex);
linfo->separator = token?*token:0;
camel_imapx_stream_astring(is, &token, ex);
- linfo->name = g_strdup((gchar *) token);
+ linfo->name = camel_utf7_utf8 ((gchar *) token);
return linfo;
}