From 4f007f4273d624de1474537ef3ec265b6a621858 Mon Sep 17 00:00:00 2001 From: Dmitry Mikhirev Date: Wed, 3 Dec 2014 19:38:51 +0300 Subject: fixed error that occured when error message contained uncoupled parentheses --- pcre.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pcre.c b/pcre.c index c113cca..d39d219 100644 --- a/pcre.c +++ b/pcre.c @@ -74,12 +74,12 @@ int mk_error(const char *fmt, ...) if (emsg == NULL) { /* should never happen */ return -1; } - mk = gmk_alloc(strlen(emsg) + 10); + mk = gmk_alloc(strlen(emsg) + 35); if (mk == NULL) { /* should never happen */ gmk_free(emsg); return -1; } - sprintf(mk, "$(error %s)", emsg); + sprintf(mk, "__pcre_msg=%s\n$(error $(__pcre_msg))", emsg); gmk_free(emsg); gmk_eval(mk, NULL); gmk_free(mk); @@ -105,11 +105,11 @@ int mk_warning(const char *fmt, ...) gmk_free(emsg); return -1; } - mk = gmk_alloc(strlen(emsg) + 12); + mk = gmk_alloc(strlen(emsg) + 37); if (mk == NULL) { /* should never happen */ return -1; } - sprintf(mk, "$(warning %s)", emsg); + sprintf(mk, "__pcre_msg=%s\n$(warning $(__pcre_msg))", emsg); gmk_free(emsg); gmk_eval(mk, NULL); gmk_free(mk); @@ -134,12 +134,12 @@ int mk_info(const char *fmt, ...) if (emsg == NULL) { /* should never happen */ return -1; } - mk = gmk_alloc(strlen(emsg) + 9); + mk = gmk_alloc(strlen(emsg) + 34); if (mk == NULL) { /* should never happen */ gmk_free(emsg); return -1; } - sprintf(mk, "$(info %s)", emsg); + sprintf(mk, "__pcre_msg=%s\n$(info $(__pcre_msg))", emsg); gmk_free(emsg); gmk_eval(mk, NULL); gmk_free(mk); -- cgit v1.2.1