aboutsummaryrefslogtreecommitdiffstats
path: root/xmlregexp.c
diff options
context:
space:
mode:
authorDaniel Veillard <veillard@redhat.com>2010-03-15 11:13:39 +0100
committerDaniel Veillard <veillard@redhat.com>2010-03-15 11:13:39 +0100
commit9543aee99b39f4de58641a66a5747cadd279d0b0 (patch)
tree58b9b1a7240c82d7befb51e6cde5c9d332556129 /xmlregexp.c
parent9031709bc716e6d1201fca9a26a5ff23b3a23d19 (diff)
downloadandroid_external_libxml2-9543aee99b39f4de58641a66a5747cadd279d0b0.tar.gz
android_external_libxml2-9543aee99b39f4de58641a66a5747cadd279d0b0.tar.bz2
android_external_libxml2-9543aee99b39f4de58641a66a5747cadd279d0b0.zip
Fix broken escape behaviour in regexp ranges
Diffstat (limited to 'xmlregexp.c')
-rw-r--r--xmlregexp.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/xmlregexp.c b/xmlregexp.c
index 2a501ad1..aaff33e7 100644
--- a/xmlregexp.c
+++ b/xmlregexp.c
@@ -4892,6 +4892,17 @@ xmlFAParseCharClassEsc(xmlRegParserCtxtPtr ctxt) {
}
}
} else if (ctxt->atom->type == XML_REGEXP_RANGES) {
+ switch (cur) {
+ case 'n':
+ cur = '\n';
+ break;
+ case 'r':
+ cur = '\r';
+ break;
+ case 't':
+ cur = '\t';
+ break;
+ }
xmlRegAtomAddRange(ctxt, ctxt->atom, ctxt->neg,
XML_REGEXP_CHARVAL, cur, cur, NULL);
}