X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=imap%2Fimap.c;h=e54b81f7c1d7ddc424e4b0805a55056a74b376bb;hp=a180ac13316fd6d434e375aaa40fa0ea9f2ea073;hb=25594eeaad2af2d06328b47283cfba72fa3bc8cd;hpb=8476307969a605bea67f6b702b0c1e7a52038bed diff --git a/imap/imap.c b/imap/imap.c index a180ac1..e54b81f 100644 --- a/imap/imap.c +++ b/imap/imap.c @@ -16,6 +16,7 @@ #include "mutt.h" #include "globals.h" +#include "pattern.h" #include "sort.h" #include "browser.h" #include "message.h" @@ -178,7 +179,6 @@ int imap_read_literal (FILE * fp, IMAP_DATA * idata, long bytes, progress_t* bar return -1; } -#if 1 if (r == 1 && c != '\n') fputc ('\r', fp); @@ -188,7 +188,7 @@ int imap_read_literal (FILE * fp, IMAP_DATA * idata, long bytes, progress_t* bar } else r = 0; -#endif + fputc (c, fp); if (bar && !(pos % 1024)) mutt_progress_bar (bar, pos); @@ -238,14 +238,14 @@ static int imap_get_delim (IMAP_DATA * idata) * than getting the delim wrong */ idata->delim = '/'; - imap_cmd_start (idata, "string_list_t \"\" \"\""); + imap_cmd_start (idata, "LIST\"\" \"\""); do { if ((rc = imap_cmd_step (idata)) != IMAP_CMD_CONTINUE) break; s = imap_next_word (idata->cmd.buf); - if (ascii_strncasecmp ("string_list_t", s, 4) == 0) { + if (ascii_strncasecmp ("LIST", s, 4) == 0) { s = imap_next_word (s); s = imap_next_word (s); if (s && s[0] == '\"' && s[1] && s[2] == '\"') @@ -347,9 +347,9 @@ IMAP_DATA *imap_conn_find (const ACCOUNT * account, int flags) if (idata->state == IMAP_CONNECTED) { if (!imap_authenticate (idata)) { idata->state = IMAP_AUTHENTICATED; - } - else + } else { mutt_account_unsetpass (&idata->conn->account); + } p_delete(&idata->capstr); } @@ -1307,7 +1307,7 @@ int imap_parse_list_response (IMAP_DATA * idata, char **name, int *noselect, return -1; s = imap_next_word (idata->cmd.buf); - if ((ascii_strncasecmp ("string_list_t", s, 4) == 0) || + if ((ascii_strncasecmp ("LIST", s, 4) == 0) || (ascii_strncasecmp ("LSUB", s, 4) == 0)) { *noselect = 0; *noinferiors = 0; @@ -1509,7 +1509,7 @@ int imap_complete (char *dest, size_t dlen, char *path) { /* fire off command */ snprintf (buf, sizeof (buf), "%s \"\" \"%s%%\"", - option (OPTIMAPLSUB) ? "LSUB" : "string_list_t", list); + option (OPTIMAPLSUB) ? "LSUB" : "LIST", list); imap_cmd_start (idata, buf); @@ -1598,15 +1598,16 @@ static int imap_open_new_message (MESSAGE * msg, CONTEXT * dest __attribute__ ((unused)), HEADER * hdr __attribute__ ((unused))) { - char tmp[_POSIX_PATH_MAX]; + char tmp[_POSIX_PATH_MAX]; - mutt_mktemp (tmp); - if ((msg->fp = safe_fopen (tmp, "w")) == NULL) { - mutt_perror (tmp); - return (-1); - } - msg->path = m_strdup(tmp); - return 0; + msg->fp = m_tempfile(tmp, sizeof(tmp), NONULL(Tempdir), NULL); + if (!msg->fp) { + mutt_perror(tmp); + return -1; + } + + msg->path = m_strdup(tmp); + return 0; } /* this ugly kludge is required since the last int to @@ -1620,7 +1621,7 @@ static int _imap_check_mailbox (CONTEXT* ctx, static int imap_commit_message (MESSAGE* msg, CONTEXT* ctx) { int r = 0; - if ((r = safe_fclose (&msg->fp)) == 0) + if ((r = m_fclose(&msg->fp)) == 0) r = imap_append_message (ctx, msg); return (r); }