[augeas-devel] augeas: master - * src/lens.c: use regexp_escape to print regexps in error messages
David Lutterkort
lutter at fedoraproject.org
Fri Oct 23 17:15:24 UTC 2009
Gitweb: http://git.fedorahosted.org/git/augeas.git?p=augeas.git;a=commitdiff;h=fad9da3030dd0726606ff1ef00244cda9d29672e
Commit: fad9da3030dd0726606ff1ef00244cda9d29672e
Parent: 14be233ae753ba1c1c2ec64b84ddfb11930115c5
Author: David Lutterkort <lutter at redhat.com>
AuthorDate: Fri Oct 23 17:41:40 2009 +0200
Committer: David Lutterkort <lutter at redhat.com>
CommitterDate: Fri Oct 23 19:11:53 2009 +0200
* src/lens.c: use regexp_escape to print regexps in error messages
---
src/lens.c | 10 +++++++---
1 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/src/lens.c b/src/lens.c
index b1045e6..2bbe88d 100644
--- a/src/lens.c
+++ b/src/lens.c
@@ -360,7 +360,7 @@ struct value *lns_make_prim(enum lens_tag tag, struct info *info,
cnt = regexp_match(regexp, dflt, strlen(dflt), 0, NULL);
if (cnt != strlen(dflt)) {
char *s = escape(dflt, -1);
- char *r = escape(regexp->pattern->str, -1);
+ char *r = regexp_escape(regexp);
exn = make_exn_value(info,
"del: the default value '%s' does not match /%s/",
s, r);
@@ -498,9 +498,11 @@ static struct value *ambig_check(struct info *info,
char *e_upv = escape(upv, -1);
char *e_pv = escape(pv, -1);
char *e_v = escape(v, -1);
+ char *s1 = regexp_escape(r1);
+ char *s2 = regexp_escape(r2);
exn = make_exn_value(ref(info), "%s", msg);
- exn_printf_line(exn, " First regexp: /%s/", escape(r1->pattern->str, -1));
- exn_printf_line(exn, " Second regexp: /%s/", escape(r2->pattern->str, -1));
+ exn_printf_line(exn, " First regexp: /%s/", s1);
+ exn_printf_line(exn, " Second regexp: /%s/", s2);
exn_printf_line(exn, " '%s' can be split into", e_upv);
exn_printf_line(exn, " '%s|=|%s'\n", e_u, e_pv);
exn_printf_line(exn, " and");
@@ -510,6 +512,8 @@ static struct value *ambig_check(struct info *info,
free(e_upv);
free(e_pv);
free(e_v);
+ free(s1);
+ free(s2);
}
free(upv);
return exn;
More information about the augeas-devel
mailing list