diff options
-rw-r--r-- | javascript/duktape/Node.bnd | 48 |
1 files changed, 16 insertions, 32 deletions
diff --git a/javascript/duktape/Node.bnd b/javascript/duktape/Node.bnd index 87d7e9292..3a723ddfb 100644 --- a/javascript/duktape/Node.bnd +++ b/javascript/duktape/Node.bnd @@ -132,18 +132,14 @@ getter Node::firstChild() dom_exception exc; dom_node *n; exc = dom_node_get_first_child(priv->node, &n); - if (exc != DOM_NO_ERR) { + if ((exc != DOM_NO_ERR) || (n == NULL)) { return 0; } - if (n == NULL) { - duk_push_null(ctx); - } else { - if (dukky_push_node(ctx, n) == false) { - dom_node_unref(n); - return 0; - } + if (dukky_push_node(ctx, n) == false) { dom_node_unref(n); + return 0; } + dom_node_unref(n); return 1; %} @@ -152,18 +148,14 @@ getter Node::lastChild() dom_exception exc; dom_node *n; exc = dom_node_get_last_child(priv->node, &n); - if (exc != DOM_NO_ERR) { + if ((exc != DOM_NO_ERR) || (n == NULL)) { return 0; } - if (n == NULL) { - duk_push_null(ctx); - } else { - if (dukky_push_node(ctx, n) == false) { - dom_node_unref(n); - return 0; - } + if (dukky_push_node(ctx, n) == false) { dom_node_unref(n); + return 0; } + dom_node_unref(n); return 1; %} @@ -172,18 +164,14 @@ getter Node::previousSibling() dom_exception exc; dom_node *n; exc = dom_node_get_previous_sibling(priv->node, &n); - if (exc != DOM_NO_ERR) { + if ((exc != DOM_NO_ERR) || (n == NULL)) { return 0; } - if (n == NULL) { - duk_push_null(ctx); - } else { - if (dukky_push_node(ctx, n) == false) { - dom_node_unref(n); - return 0; - } + if (dukky_push_node(ctx, n) == false) { dom_node_unref(n); + return 0; } + dom_node_unref(n); return 1; %} @@ -192,18 +180,14 @@ getter Node::nextSibling() dom_exception exc; dom_node *n; exc = dom_node_get_next_sibling(priv->node, &n); - if (exc != DOM_NO_ERR) { + if ((exc != DOM_NO_ERR) || (n == NULL)) { return 0; } - if (n == NULL) { - duk_push_null(ctx); - } else { - if (dukky_push_node(ctx, n) == false) { - dom_node_unref(n); - return 0; - } + if (dukky_push_node(ctx, n) == false) { dom_node_unref(n); + return 0; } + dom_node_unref(n); return 1; %} |