aboutsummaryrefslogtreecommitdiffhomepage
path: root/util
diff options
context:
space:
mode:
Diffstat (limited to 'util')
-rw-r--r--util/xutil.c7
-rw-r--r--util/xutil.h3
2 files changed, 7 insertions, 3 deletions
diff --git a/util/xutil.c b/util/xutil.c
index 15ff7650..ac496daf 100644
--- a/util/xutil.c
+++ b/util/xutil.c
@@ -99,7 +99,7 @@ xstrndup (const char *s, size_t n)
return ret;
}
-void
+int
xregcomp (regex_t *preg, const char *regex, int cflags)
{
int rerr;
@@ -110,9 +110,12 @@ xregcomp (regex_t *preg, const char *regex, int cflags)
char *error = xmalloc (error_size);
regerror (rerr, preg, error, error_size);
- INTERNAL_ERROR ("compiling regex %s: %s\n",
+ fprintf (stderr, "compiling regex %s: %s\n",
regex, error);
+ free (error);
+ return 1;
}
+ return 0;
}
int
diff --git a/util/xutil.h b/util/xutil.h
index fd77f733..92992564 100644
--- a/util/xutil.h
+++ b/util/xutil.h
@@ -43,7 +43,8 @@ xstrdup (const char *s);
char *
xstrndup (const char *s, size_t n);
-void
+/* Returns 0 for successful compilation, 1 otherwise */
+int
xregcomp (regex_t *preg, const char *regex, int cflags);
int