[lasem] [Mathml] Fix can_append_child for underover and script elements.
- From: Emmanuel Pacaud <emmanuel src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [lasem] [Mathml] Fix can_append_child for underover and script elements.
- Date: Mon, 11 Jan 2010 21:38:44 +0000 (UTC)
commit f7a7109b37e45c31a69e56262e876ed0f118fe29
Author: Emmanuel Pacaud <emmanuel gnome org>
Date: Mon Jan 11 22:37:01 2010 +0100
[Mathml] Fix can_append_child for underover and script elements.
Use the right LSM_IS macro. We can now safely remove the parent node type
test in the DOM parser.
src/lsmdomparser.c | 10 ++++++----
src/lsmmathmlscriptelement.c | 2 +-
src/lsmmathmlunderoverelement.c | 2 +-
3 files changed, 8 insertions(+), 6 deletions(-)
---
diff --git a/src/lsmdomparser.c b/src/lsmdomparser.c
index c7e0b28..ab312bb 100644
--- a/src/lsmdomparser.c
+++ b/src/lsmdomparser.c
@@ -146,16 +146,18 @@ lsm_dom_parser_characters (void *user_data, const xmlChar *ch, int len)
{
LsmDomSaxParserState *state = user_data;
- if ((LSM_IS_MATHML_PRESENTATION_TOKEN (state->current_node) ||
- LSM_IS_SVG_TEXT_ELEMENT (state->current_node)) &&
- !state->is_error) {
+ if (!state->is_error) {
LsmDomNode *node;
char *text;
text = g_strndup ((char *) ch, len);
node = LSM_DOM_NODE (lsm_dom_document_create_text_node (LSM_DOM_DOCUMENT (state->document), text));
- lsm_dom_node_append_child (state->current_node, node);
+ if (lsm_dom_node_append_child (state->current_node, node) == NULL) {
+ if (node != NULL)
+ g_object_unref (node);
+ }
+
g_free (text);
}
}
diff --git a/src/lsmmathmlscriptelement.c b/src/lsmmathmlscriptelement.c
index f4a7e8b..4484a75 100644
--- a/src/lsmmathmlscriptelement.c
+++ b/src/lsmmathmlscriptelement.c
@@ -48,7 +48,7 @@ lsm_mathml_script_element_can_append_child (LsmDomNode *self, LsmDomNode *child)
{
LsmMathmlScriptElement *script = LSM_MATHML_SCRIPT_ELEMENT (self);
- if (!LSM_MATHML_ELEMENT (child))
+ if (!LSM_IS_MATHML_ELEMENT (child))
return FALSE;
if (self->first_child == NULL ||
diff --git a/src/lsmmathmlunderoverelement.c b/src/lsmmathmlunderoverelement.c
index e2f4ab6..dad8805 100644
--- a/src/lsmmathmlunderoverelement.c
+++ b/src/lsmmathmlunderoverelement.c
@@ -51,7 +51,7 @@ lsm_mathml_under_over_element_can_append_child (LsmDomNode *self, LsmDomNode *ch
{
LsmMathmlUnderOverElement *under_over = LSM_MATHML_UNDER_OVER_ELEMENT (self);
- if (!LSM_MATHML_ELEMENT (child))
+ if (!LSM_IS_MATHML_ELEMENT (child))
return FALSE;
if (self->first_child == NULL ||
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]