[gtk+] cssparser: Fix cases where we could overrun the terminating 0
- From: Benjamin Otte <otte src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] cssparser: Fix cases where we could overrun the terminating 0
- Date: Fri, 26 Aug 2011 14:35:52 +0000 (UTC)
commit 8d6b560ff366394374dc0a96005cac14efe8d5ac
Author: Benjamin Otte <otte redhat com>
Date: Fri Jun 17 07:55:17 2011 +0200
cssparser: Fix cases where we could overrun the terminating 0
gtk/gtkcssparser.c | 11 ++++++++---
1 files changed, 8 insertions(+), 3 deletions(-)
---
diff --git a/gtk/gtkcssparser.c b/gtk/gtkcssparser.c
index 13d63d4..2d6a4df 100644
--- a/gtk/gtkcssparser.c
+++ b/gtk/gtkcssparser.c
@@ -875,17 +875,20 @@ _gtk_css_parser_resync_internal (GtkCssParser *parser,
case '(':
parser->data++;
_gtk_css_parser_resync (parser, FALSE, ')');
- parser->data++;
+ if (*parser->data)
+ parser->data++;
break;
case '[':
parser->data++;
_gtk_css_parser_resync (parser, FALSE, ']');
- parser->data++;
+ if (*parser->data)
+ parser->data++;
break;
case '{':
parser->data++;
_gtk_css_parser_resync (parser, FALSE, '}');
- parser->data++;
+ if (*parser->data)
+ parser->data++;
if (sync_at_semicolon || !terminator)
{
_gtk_css_parser_skip_whitespace (parser);
@@ -902,6 +905,8 @@ _gtk_css_parser_resync_internal (GtkCssParser *parser,
}
parser->data++;
continue;
+ case '\0':
+ break;
case '/':
default:
parser->data++;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]