summaryrefslogtreecommitdiffstats
path: root/src/libcroco/cr-om-parser.c
diff options
context:
space:
mode:
authorAlex Valavanis <valavanisalex@gmail.com>2013-11-03 11:38:35 +0000
committerAlex Valavanis <valavanisalex@gmail.com>2013-11-03 11:38:35 +0000
commitb4efe9a08f442b8149978edbcbd4f627a0758249 (patch)
treebc9f46861458733ffee64d38f6e6db2e33d945c5 /src/libcroco/cr-om-parser.c
parentlibcroco: Merge upstream 0.6.5 changes (diff)
downloadinkscape-b4efe9a08f442b8149978edbcbd4f627a0758249.tar.gz
inkscape-b4efe9a08f442b8149978edbcbd4f627a0758249.zip
libcroco: Merge upstream 0.6.6 changes
(bzr r12768)
Diffstat (limited to 'src/libcroco/cr-om-parser.c')
-rw-r--r--src/libcroco/cr-om-parser.c17
1 files changed, 6 insertions, 11 deletions
diff --git a/src/libcroco/cr-om-parser.c b/src/libcroco/cr-om-parser.c
index dd6cacc06..8eb37306b 100644
--- a/src/libcroco/cr-om-parser.c
+++ b/src/libcroco/cr-om-parser.c
@@ -143,7 +143,7 @@ static enum CRStatus
cr_om_parser_init_default_sac_handler (CROMParser * a_this)
{
CRDocHandler *sac_handler = NULL;
- gboolean free_hdlr_if_error = FALSE;
+ gboolean created_handler = FALSE;
enum CRStatus status = CR_OK;
g_return_val_if_fail (a_this && PRIVATE (a_this)
@@ -156,7 +156,7 @@ cr_om_parser_init_default_sac_handler (CROMParser * a_this)
if (!sac_handler) {
sac_handler = cr_doc_handler_new ();
- free_hdlr_if_error = TRUE;
+ created_handler = TRUE;
}
/*
@@ -178,15 +178,10 @@ cr_om_parser_init_default_sac_handler (CROMParser * a_this)
sac_handler->end_media = end_media;
sac_handler->import_style = import_style;
- status = cr_parser_set_sac_handler (PRIVATE (a_this)->parser,
- sac_handler);
- if (status == CR_OK) {
- return CR_OK;
- }
-
- if (sac_handler && free_hdlr_if_error == TRUE) {
- cr_doc_handler_destroy (sac_handler);
- sac_handler = NULL;
+ if (created_handler) {
+ status = cr_parser_set_sac_handler (PRIVATE (a_this)->parser,
+ sac_handler);
+ cr_doc_handler_unref (sac_handler);
}
return status;