diff --git a/src/utils.c b/src/utils.c index 86d55770b0f18adee4aa68b1be09f6f571fcdaa3..4d38464883e093d7ed55bb0c11c8f5387c029086 100644 --- a/src/utils.c +++ b/src/utils.c @@ -36,11 +36,13 @@ #ifdef HAVE_REGEX_H #ifdef BROKEN_REGEXEC +/* Work around a potential segfault in glibc 2.2.3's regexec(). */ int safe_regexec(const regex_t *preg, const char *string, size_t nmatch, regmatch_t pmatch[], int eflags) { if (string != NULL && *string != '\0') return regexec(preg, string, nmatch, pmatch, eflags); + return REG_NOMATCH; } #endif