summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Persch <chpe@gnome.org>2012-03-19 22:29:14 +0100
committerChristian Persch <chpe@gnome.org>2012-03-19 22:29:14 +0100
commit2e1c7a77b1dd34bea31c38460f2e60e9cb665ade (patch)
treedba795e30a7b517ed147b266e44ac0da9653040f
parentc8f972635535c5961063e8a16dbbf74f4aaac816 (diff)
downloadlibrsvg-2e1c7a77b1dd34bea31c38460f2e60e9cb665ade.tar.gz
styles: Don't try parsing empty <style>
https://bugzilla.gnome.org/show_bug.cgi?id=672414
-rw-r--r--configure.in2
-rw-r--r--rsvg-styles.c4
2 files changed, 4 insertions, 2 deletions
diff --git a/configure.in b/configure.in
index ffa48f83..db3d86de 100644
--- a/configure.in
+++ b/configure.in
@@ -279,7 +279,7 @@ dnl Build introspectable bindings
# No automagic please!
if test -z "$enable_introspection"; then
- enable_introspection=no
+ enable_introspection=yes
fi
GOBJECT_INTROSPECTION_CHECK([0.10.8])
diff --git a/rsvg-styles.c b/rsvg-styles.c
index 5eab4f52..bc55b5ad 100644
--- a/rsvg-styles.c
+++ b/rsvg-styles.c
@@ -1133,6 +1133,9 @@ rsvg_parse_cssbuffer (RsvgHandle * ctx, const char *buff, size_t buflen)
CRDocHandler *css_handler = NULL;
CSSUserData user_data;
+ if (buff == NULL || buflen == 0)
+ return;
+
css_handler = cr_doc_handler_new ();
init_sac_handler (css_handler);
@@ -1142,7 +1145,6 @@ rsvg_parse_cssbuffer (RsvgHandle * ctx, const char *buff, size_t buflen)
/* TODO: fix libcroco to take in const strings */
parser = cr_parser_new_from_buf ((guchar *) buff, (gulong) buflen, CR_UTF_8, FALSE);
if (parser == NULL) {
- g_warning (_("Error creating CSS parser\n"));
cr_doc_handler_unref (css_handler);
return;
}