2012-11-21 [colin] 3.9.0cvs18
[claws.git] / src / etpan / imap-thread.c
index b0cd341ec003abe2b3276b952daa82f1c997e380..4a1f1fad12e1530d156e9d9f8bb4a040dab79712 100644 (file)
@@ -1591,7 +1591,8 @@ static void search_run(struct etpan_thread_op * op)
        struct mailimap_search_key * uid_key = NULL;
        struct mailimap_search_key * search_type_key = NULL;
        clist * search_result;
-       
+       static const char *charset = NULL;
+
        param = op->param;
        result = op->result;
 
@@ -1629,6 +1630,7 @@ static void search_run(struct etpan_thread_op * op)
                search_type_key = imap_search_new(IMAP_SEARCH_CRITERIA_TAG, NULL, RTAG_JUNK, 0);
                break;
        case IMAP_SEARCH_TYPE_KEYED:
+               charset = "UTF-8";
                search_type_key = param->key;
                break;
        }
@@ -1653,7 +1655,7 @@ static void search_run(struct etpan_thread_op * op)
        } else {
                mailstream_logger = imap_logger_uid;
 
-               r = mailimap_uid_search(param->imap, NULL, key, &search_result);
+               r = mailimap_uid_search(param->imap, charset, key, &search_result);
 
                mailstream_logger = imap_logger_cmd;
 
@@ -2136,8 +2138,7 @@ result_to_uid_flags_list(clist * fetch_result, carray ** result)
   
  free_list:
        imap_fetch_uid_flags_list_free(tab);
-       slist_free_strings(tags);
-       g_slist_free(tags);
+       slist_free_strings_full(tags);
  err:
        return res;
 }