#ifndef MUTT_LIB_LIB_STR_H
#define MUTT_LIB_LIB_STR_H
-#include <string.h>
-#include <ctype.h>
-
-#include "mem.h"
-
#define HUGE_STRING 5120
#define LONG_STRING 1024
#define STRING 256
return strcasecmp(NONULL(a), NONULL(b));
}
-static inline int m_strncmp(const char *a, const char *b, size_t n) {
+static inline int m_strncmp(const char *a, const char *b, ssize_t n) {
return strncmp (NONULL(a), NONULL(b), n);
}
-static inline int m_strncasecmp(const char *a, const char *b, size_t n) {
+static inline int m_strncasecmp(const char *a, const char *b, ssize_t n) {
return strncasecmp(NONULL(a), NONULL(b), n);
}
/* parsing related */
/****************************************************************************/
+static inline const char *m_strchrnul(const char *s, int c) {
+ while (*s && *s != c)
+ s++;
+ return s;
+}
+
+static inline const char *m_strnextsp(const char *s) {
+ while (*s && !isspace((unsigned char)*s))
+ s++;
+ return s;
+}
+
static inline const char *skipspaces(const char *s) {
while (*s && isspace((unsigned char)*s))
s++;