[libxml2] Fix an off by one pointer access
- From: Daniel Veillard <veillard src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [libxml2] Fix an off by one pointer access
- Date: Mon, 7 May 2012 07:11:16 +0000 (UTC)
commit d8e1faeaa99c7a7c07af01c1c72de352eb590a3e
Author: JÃri Aedla <asd ut ee>
Date: Mon May 7 15:06:56 2012 +0800
Fix an off by one pointer access
getting out of the range of memory allocated for xpointer decoding
xpointer.c | 15 ++++-----------
1 files changed, 4 insertions(+), 11 deletions(-)
---
diff --git a/xpointer.c b/xpointer.c
index 37afa3a..0b463dd 100644
--- a/xpointer.c
+++ b/xpointer.c
@@ -1007,21 +1007,14 @@ xmlXPtrEvalXPtrPart(xmlXPathParserContextPtr ctxt, xmlChar *name) {
NEXT;
break;
}
- *cur++ = CUR;
} else if (CUR == '(') {
level++;
- *cur++ = CUR;
} else if (CUR == '^') {
- NEXT;
- if ((CUR == ')') || (CUR == '(') || (CUR == '^')) {
- *cur++ = CUR;
- } else {
- *cur++ = '^';
- *cur++ = CUR;
- }
- } else {
- *cur++ = CUR;
+ if ((NXT(1) == ')') || (NXT(1) == '(') || (NXT(1) == '^')) {
+ NEXT;
+ }
}
+ *cur++ = CUR;
NEXT;
}
*cur = 0;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]