author | Petr Sumbera <petr.sumbera@oracle.com> |
Mon, 11 Feb 2013 04:55:42 -0800 | |
changeset 1149 | 3141d40ef3e0 |
permissions | -rw-r--r-- |
1149
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
1 |
From 6a36fbe3b3e001a8a840b5c1fdd81cefc9947f0d Mon Sep 17 00:00:00 2001 |
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
2 |
From: Daniel Veillard <[email protected]> |
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
3 |
Date: Mon, 29 Oct 2012 02:39:55 +0000 |
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
4 |
Subject: Fix potential out of bound access |
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
5 |
|
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
6 |
--- |
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
7 |
diff --git a/parser.c b/parser.c |
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
8 |
index 0d8d7f2..bd634e9 100644 |
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
9 |
--- a/parser.c |
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
10 |
+++ b/parser.c |
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
11 |
@@ -4076,7 +4076,7 @@ xmlParseAttValueComplex(xmlParserCtxtPtr ctxt, int *attlen, int normalize) { |
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
12 |
goto error; |
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
13 |
|
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
14 |
if ((in_space) && (normalize)) { |
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
15 |
- while (buf[len - 1] == 0x20) len--; |
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
16 |
+ while ((len > 0) && (buf[len - 1] == 0x20)) len--; |
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
17 |
} |
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
18 |
buf[len] = 0; |
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
19 |
if (RAW == '<') { |
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
20 |
-- |
3141d40ef3e0
16292025 problem in LIBRARY/LIBXML
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
21 |
cgit v0.9.0.2 |