Signed-off-by: Pierre Habouzit <madcoder@debian.org>
return (*p = m_strdup(s));
}
return (*p = m_strdup(s));
}
+static inline ssize_t m_strputc(char *dst, ssize_t n, int c) {
+ if (n > 1) {
+ dst[0] = c;
+ dst[1] = '\0';
+ }
+ return 1;
+}
+
ssize_t m_strcpy(char *dst, ssize_t n, const char *src);
ssize_t m_strncpy(char *dst, ssize_t n, const char *src, ssize_t l);
ssize_t m_strcpy(char *dst, ssize_t n, const char *src);
ssize_t m_strncpy(char *dst, ssize_t n, const char *src, ssize_t l);
- pos += m_strcpy(buf + pos, buflen - pos, ">");
+ pos += m_strputc(buf + pos, buflen - pos, '>');
- pos += m_strcpy(buf + pos, buflen - pos, ":");
+ pos += m_strputc(buf + pos, buflen - pos, ':');
- pos += m_strcpy(buf + pos, buflen - pos, ";");
+ pos += m_strputc(buf + pos, buflen - pos, ';');
-static /* const */ char *find_matching_paren ( /* const */ char *s)
+static const char *find_matching_paren (const char *s)
- int level = 1;
-
- for (; *s; s++) {
- if (*s == '(')
- level++;
- else if (*s == ')') {
- level--;
- if (!level)
- break;
+ int level = 1;
+
+ for (; *s; s++) {
+ level += (*s == '(') - (*s == ')');
+ if (!level)
+ break;
}
pattern_t *mutt_pattern_comp(const char *s, int flags, BUFFER *err)
}
pattern_t *mutt_pattern_comp(const char *s, int flags, BUFFER *err)