[gtk+] cssprovider: Only push a new scanner when none exists
- From: Benjamin Otte <otte src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] cssprovider: Only push a new scanner when none exists
- Date: Mon, 16 Nov 2015 18:35:31 +0000 (UTC)
commit 9facd0088446b1b4162c350cf6e1ee28242c8325
Author: Benjamin Otte <otte redhat com>
Date: Mon Nov 16 19:34:24 2015 +0100
cssprovider: Only push a new scanner when none exists
For @import, we want to emit the error as part of the @import statement,
not as part of the new file.
gtk/gtkcssprovider.c | 24 ++++++++++++++++--------
1 files changed, 16 insertions(+), 8 deletions(-)
---
diff --git a/gtk/gtkcssprovider.c b/gtk/gtkcssprovider.c
index fbe9163..5c17936 100644
--- a/gtk/gtkcssprovider.c
+++ b/gtk/gtkcssprovider.c
@@ -2728,13 +2728,18 @@ gtk_css_provider_load_internal (GtkCssProvider *css_provider,
}
else
{
- scanner = gtk_css_scanner_new (css_provider,
- parent,
- parent ? parent->section : NULL,
- file,
- "");
+ if (parent == NULL)
+ {
+ scanner = gtk_css_scanner_new (css_provider,
+ parent,
+ parent ? parent->section : NULL,
+ file,
+ "");
- gtk_css_scanner_push_section (scanner, GTK_CSS_SECTION_DOCUMENT);
+ gtk_css_scanner_push_section (scanner, GTK_CSS_SECTION_DOCUMENT);
+ }
+ else
+ scanner = parent;
gtk_css_provider_error (css_provider,
scanner,
@@ -2743,9 +2748,12 @@ gtk_css_provider_load_internal (GtkCssProvider *css_provider,
"Failed to import: %s",
load_error->message);
- gtk_css_scanner_pop_section (scanner, GTK_CSS_SECTION_DOCUMENT);
+ if (parent == NULL)
+ {
+ gtk_css_scanner_pop_section (scanner, GTK_CSS_SECTION_DOCUMENT);
- gtk_css_scanner_destroy (scanner);
+ gtk_css_scanner_destroy (scanner);
+ }
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]