make m_dupstr return NULL if the string was empty.
[apps/madmutt.git] / imap / command.c
index 02d49d7..915e3f1 100644 (file)
@@ -17,6 +17,7 @@
 #endif
 
 #include <lib-lib/mem.h>
+#include <lib-lib/ascii.h>
 #include <lib-lib/macros.h>
 
 #include "lib/debug.h"
@@ -24,7 +25,6 @@
 #include "mutt.h"
 #include "message.h"
 #include "mx.h"
-#include "ascii.h"
 #include "imap_private.h"
 
 #include <ctype.h>
@@ -74,7 +74,7 @@ int imap_cmd_start (IMAP_DATA * idata, const char *cmd)
 
   cmd_make_sequence (idata);
   /* seq, space, cmd, \r\n\0 */
-  outlen = str_len (idata->cmd.seq) + str_len (cmd) + 4;
+  outlen = m_strlen(idata->cmd.seq) + m_strlen(cmd) + 4;
   out = p_new(char, outlen);
   snprintf (out, outlen, "%s %s\r\n", idata->cmd.seq, cmd);
 
@@ -188,7 +188,7 @@ int imap_exec (IMAP_DATA * idata, const char *cmd, int flags)
   /* create sequence for command */
   cmd_make_sequence (idata);
   /* seq, space, cmd, \r\n\0 */
-  outlen = str_len (idata->cmd.seq) + str_len (cmd) + 4;
+  outlen = m_strlen(idata->cmd.seq) + m_strlen(cmd) + 4;
   out = p_new(char, outlen);
   snprintf (out, outlen, "%s %s\r\n", idata->cmd.seq, cmd);
 
@@ -434,9 +434,9 @@ static void cmd_parse_capabilities (IMAP_DATA * idata, char *s)
 
   s = imap_next_word (s);
   p_delete(&idata->capstr);
-  idata->capstr = str_dup (s);
+  idata->capstr = m_strdup(s);
 
-  memset (idata->capabilities, 0, sizeof (idata->capabilities));
+  p_clear(idata->capabilities, 1);
 
   while (*s) {
     for (x = 0; x < CAPMAX; x++)
@@ -572,11 +572,11 @@ static void cmd_parse_lsub (IMAP_DATA* idata, char* s) {
     strfcpy (buf, "mailboxes \"", sizeof (buf));
     mutt_account_tourl (&idata->conn->account, &url);
     url.path = s;
-    if (!str_cmp (url.user, ImapUser))
+    if (!m_strcmp(url.user, ImapUser))
       url.user = NULL;
     url_ciss_tostring (&url, buf + 11, sizeof (buf) - 10, 0);
-    str_cat (buf, sizeof (buf), "\"");
-    memset (&token, 0, sizeof (token));
+    m_strcat(buf, sizeof(buf), "\"");
+    p_clear(&token, 1);
     err.data = errstr;
     err.dsize = sizeof (errstr);
     if (mutt_parse_rc_line (buf, &token, &err))
@@ -596,7 +596,7 @@ static void cmd_parse_myrights (IMAP_DATA * idata, char *s)
   s = imap_next_word (s);
 
   /* zero out current rights set */
-  memset (idata->rights, 0, sizeof (idata->rights));
+  p_clear(idata->rights, 1);
 
   while (*s && !isspace ((unsigned char) *s)) {
     switch (*s) {