r13112 tlsa - /branches/jmb/dom-alloc-purge/bindings/xml/xmlparser.c
by netsurf@semichrome.net
Author: tlsa
Date: Tue Nov 1 17:58:25 2011
New Revision: 13112
URL: http://source.netsurf-browser.org?rev=13112&view=rev
Log:
Put ret back.
Modified:
branches/jmb/dom-alloc-purge/bindings/xml/xmlparser.c
Modified: branches/jmb/dom-alloc-purge/bindings/xml/xmlparser.c
URL: http://source.netsurf-browser.org/branches/jmb/dom-alloc-purge/bindings/x...
==============================================================================
--- branches/jmb/dom-alloc-purge/bindings/xml/xmlparser.c (original)
+++ branches/jmb/dom-alloc-purge/bindings/xml/xmlparser.c Tue Nov 1 17:58:25 2011
@@ -171,6 +171,7 @@
{
dom_xml_parser *parser;
dom_exception err;
+ int ret;
UNUSED(enc);
UNUSED(int_enc);
@@ -190,7 +191,7 @@
}
/* Set options of parsing context */
- xmlCtxtUseOptions(parser->xml_ctx, XML_PARSE_DTDATTR |
+ ret = xmlCtxtUseOptions(parser->xml_ctx, XML_PARSE_DTDATTR |
XML_PARSE_DTDLOAD);
assert(ret == 0);
11 years, 7 months
r13111 tlsa - /branches/jmb/dom-alloc-purge/bindings/xml/xmlparser.c
by netsurf@semichrome.net
Author: tlsa
Date: Tue Nov 1 17:49:15 2011
New Revision: 13111
URL: http://source.netsurf-browser.org?rev=13111&view=rev
Log:
Fix warning.
Modified:
branches/jmb/dom-alloc-purge/bindings/xml/xmlparser.c
Modified: branches/jmb/dom-alloc-purge/bindings/xml/xmlparser.c
URL: http://source.netsurf-browser.org/branches/jmb/dom-alloc-purge/bindings/x...
==============================================================================
--- branches/jmb/dom-alloc-purge/bindings/xml/xmlparser.c (original)
+++ branches/jmb/dom-alloc-purge/bindings/xml/xmlparser.c Tue Nov 1 17:49:15 2011
@@ -171,7 +171,6 @@
{
dom_xml_parser *parser;
dom_exception err;
- int ret;
UNUSED(enc);
UNUSED(int_enc);
@@ -191,7 +190,7 @@
}
/* Set options of parsing context */
- ret = xmlCtxtUseOptions(parser->xml_ctx, XML_PARSE_DTDATTR |
+ xmlCtxtUseOptions(parser->xml_ctx, XML_PARSE_DTDATTR |
XML_PARSE_DTDLOAD);
assert(ret == 0);
11 years, 7 months
r13110 jmb - in /branches/jmb/dom-alloc-purge: include/dom/core/ include/dom/events/ src/core/ src/events/
by netsurf@semichrome.net
Author: jmb
Date: Tue Nov 1 17:43:53 2011
New Revision: 13110
URL: http://source.netsurf-browser.org?rev=13110&view=rev
Log:
Make EventTarget an abstract interface like it should have been in the first place
Modified:
branches/jmb/dom-alloc-purge/include/dom/core/node.h
branches/jmb/dom-alloc-purge/include/dom/events/event_target.h
branches/jmb/dom-alloc-purge/src/core/attr.c
branches/jmb/dom-alloc-purge/src/core/characterdata.c
branches/jmb/dom-alloc-purge/src/core/doc_fragment.c
branches/jmb/dom-alloc-purge/src/core/document.c
branches/jmb/dom-alloc-purge/src/core/document_type.c
branches/jmb/dom-alloc-purge/src/core/element.c
branches/jmb/dom-alloc-purge/src/core/entity_ref.c
branches/jmb/dom-alloc-purge/src/core/node.c
branches/jmb/dom-alloc-purge/src/core/node.h
branches/jmb/dom-alloc-purge/src/core/pi.c
branches/jmb/dom-alloc-purge/src/core/text.c
branches/jmb/dom-alloc-purge/src/events/event.h
branches/jmb/dom-alloc-purge/src/events/event_target.h
Modified: branches/jmb/dom-alloc-purge/include/dom/core/node.h
URL: http://source.netsurf-browser.org/branches/jmb/dom-alloc-purge/include/do...
==============================================================================
--- branches/jmb/dom-alloc-purge/include/dom/core/node.h (original)
+++ branches/jmb/dom-alloc-purge/include/dom/core/node.h Tue Nov 1 17:43:53 2011
@@ -13,6 +13,7 @@
#include <dom/core/exceptions.h>
#include <dom/core/string.h>
+#include <dom/events/event_target.h>
struct dom_document;
struct dom_nodelist;
@@ -81,6 +82,7 @@
/* DOM node vtable */
typedef struct dom_node_vtable {
+ dom_event_target_vtable base;
/* The DOM level 3 node's oprations */
dom_exception (*dom_node_get_node_name)(dom_node_internal *node,
Modified: branches/jmb/dom-alloc-purge/include/dom/events/event_target.h
URL: http://source.netsurf-browser.org/branches/jmb/dom-alloc-purge/include/do...
==============================================================================
--- branches/jmb/dom-alloc-purge/include/dom/events/event_target.h (original)
+++ branches/jmb/dom-alloc-purge/include/dom/events/event_target.h Tue Nov 1 17:43:53 2011
@@ -14,46 +14,95 @@
struct dom_event_listener;
struct dom_event;
-struct dom_node_internal;
-typedef struct dom_node_internal dom_event_target;
+/* Event target is a mixin interface, thus has no concrete implementation.
+ * Subclasses must provide implementations of the event target methods. */
+typedef struct dom_event_target {
+ void *vtable;
+} dom_event_target;
-dom_exception _dom_event_target_add_event_listener(dom_event_target *et,
- dom_string *type, struct dom_event_listener *listener,
- bool capture);
+typedef struct dom_event_target_vtable {
+ dom_exception (*add_event_listener)(
+ dom_event_target *et, dom_string *type,
+ struct dom_event_listener *listener,
+ bool capture);
+ dom_exception (*remove_event_listener)(
+ dom_event_target *et, dom_string *type,
+ struct dom_event_listener *listener,
+ bool capture);
+ dom_exception (*dispatch_event)(
+ dom_event_target *et,
+ struct dom_event *evt, bool *success);
+ dom_exception (*add_event_listener_ns)(
+ dom_event_target *et,
+ dom_string *namespace, dom_string *type,
+ struct dom_event_listener *listener,
+ bool capture);
+ dom_exception (*remove_event_listener_ns)(
+ dom_event_target *et,
+ dom_string *namespace, dom_string *type,
+ struct dom_event_listener *listener,
+ bool capture);
+} dom_event_target_vtable;
+
+static inline dom_exception dom_event_target_add_event_listener(
+ dom_event_target *et, dom_string *type,
+ struct dom_event_listener *listener, bool capture)
+{
+ return ((dom_event_target_vtable *) et->vtable)->add_event_listener(
+ et, type, listener, capture);
+}
#define dom_event_target_add_event_listener(et, t, l, c) \
- _dom_event_target_add_event_listener((dom_event_target *) (et),\
+ dom_event_target_add_event_listener((dom_event_target *) (et),\
(dom_string *) (t), (struct dom_event_listener *) (l), \
(bool) (c))
-dom_exception _dom_event_target_remove_event_listener(dom_event_target *et,
- dom_string *type, struct dom_event_listener *listener,
- bool capture);
+static inline dom_exception dom_event_target_remove_event_listener(
+ dom_event_target *et, dom_string *type,
+ struct dom_event_listener *listener, bool capture)
+{
+ return ((dom_event_target_vtable *) et->vtable)->remove_event_listener(
+ et, type, listener, capture);
+}
#define dom_event_target_remove_event_listener(et, t, l, c) \
- _dom_event_target_remove_event_listener(\
+ dom_event_target_remove_event_listener(\
(dom_event_target *) (et), (dom_string *) (t),\
(struct dom_event_listener *) (l), (bool) (c))
-dom_exception _dom_event_target_dispatch_event(dom_event_target *et,
- struct dom_event *evt, bool *success);
+static inline dom_exception dom_event_target_dispatch_event(
+ dom_event_target *et, struct dom_event *evt, bool *success)
+{
+ return ((dom_event_target_vtable *) et->vtable)->dispatch_event(
+ et, evt, success);
+}
#define dom_event_target_dispatch_event(et, e, s) \
- _dom_event_target_dispatch_event((dom_event_target *) (et),\
+ dom_event_target_dispatch_event((dom_event_target *) (et),\
(struct dom_event *) (e), (bool *) (s))
-dom_exception _dom_event_target_add_event_listener_ns(dom_event_target *et,
+static inline dom_exception dom_event_target_add_event_listener_ns(
+ dom_event_target *et,
dom_string *namespace, dom_string *type,
- struct dom_event_listener *listener, bool capture);
+ struct dom_event_listener *listener, bool capture)
+{
+ return ((dom_event_target_vtable *) et->vtable)->add_event_listener_ns(
+ et, namespace, type, listener, capture);
+}
#define dom_event_target_add_event_listener_ns(et, n, t, l, c) \
- _dom_event_target_add_event_listener_ns(\
+ dom_event_target_add_event_listener_ns(\
(dom_event_target *) (et), (dom_string *) (n),\
(dom_string *) (t), (struct dom_event_listener *) (l),\
(bool) (c))
-dom_exception _dom_event_target_remove_event_listener_ns(dom_event_target *et,
+static inline dom_exception dom_event_target_remove_event_listener_ns(
+ dom_event_target *et,
dom_string *namespace, dom_string *type,
- struct dom_event_listener *listener, bool capture);
+ struct dom_event_listener *listener, bool capture)
+{
+ return ((dom_event_target_vtable *) et->vtable)->remove_event_listener_ns(
+ et, namespace, type, listener, capture);
+}
#define dom_event_target_remove_event_listener_ns(et, n, t, l, c) \
- _dom_event_target_remove_event_listener_ns(\
+ dom_event_target_remove_event_listener_ns(\
(dom_event_target *) (et), (dom_string *) (n),\
(dom_string *) (t), (struct dom_event_listener *) (l),\
(bool) (c))
Modified: branches/jmb/dom-alloc-purge/src/core/attr.c
URL: http://source.netsurf-browser.org/branches/jmb/dom-alloc-purge/src/core/a...
==============================================================================
--- branches/jmb/dom-alloc-purge/src/core/attr.c (original)
+++ branches/jmb/dom-alloc-purge/src/core/attr.c Tue Nov 1 17:43:53 2011
@@ -52,6 +52,9 @@
/* The vtable for dom_attr node */
static struct dom_attr_vtable attr_vtable = {
{
+ {
+ DOM_NODE_EVENT_TARGET_VTABLE,
+ },
DOM_NODE_VTABLE_ATTR
},
DOM_ATTR_VTABLE
Modified: branches/jmb/dom-alloc-purge/src/core/characterdata.c
URL: http://source.netsurf-browser.org/branches/jmb/dom-alloc-purge/src/core/c...
==============================================================================
--- branches/jmb/dom-alloc-purge/src/core/characterdata.c (original)
+++ branches/jmb/dom-alloc-purge/src/core/characterdata.c Tue Nov 1 17:43:53 2011
@@ -23,6 +23,9 @@
* public to each child class */
struct dom_characterdata_vtable characterdata_vtable = {
{
+ {
+ DOM_NODE_EVENT_TARGET_VTABLE
+ },
DOM_NODE_VTABLE
},
DOM_CHARACTERDATA_VTABLE
Modified: branches/jmb/dom-alloc-purge/src/core/doc_fragment.c
URL: http://source.netsurf-browser.org/branches/jmb/dom-alloc-purge/src/core/d...
==============================================================================
--- branches/jmb/dom-alloc-purge/src/core/doc_fragment.c (original)
+++ branches/jmb/dom-alloc-purge/src/core/doc_fragment.c Tue Nov 1 17:43:53 2011
@@ -23,6 +23,9 @@
};
static struct dom_node_vtable df_vtable = {
+ {
+ DOM_NODE_EVENT_TARGET_VTABLE
+ },
DOM_NODE_VTABLE
};
Modified: branches/jmb/dom-alloc-purge/src/core/document.c
URL: http://source.netsurf-browser.org/branches/jmb/dom-alloc-purge/src/core/d...
==============================================================================
--- branches/jmb/dom-alloc-purge/src/core/document.c (original)
+++ branches/jmb/dom-alloc-purge/src/core/document.c Tue Nov 1 17:43:53 2011
@@ -44,6 +44,9 @@
/* The virtual functions of this dom_document */
static struct dom_document_vtable document_vtable = {
{
+ {
+ DOM_NODE_EVENT_TARGET_VTABLE
+ },
DOM_NODE_VTABLE
},
DOM_DOCUMENT_VTABLE
Modified: branches/jmb/dom-alloc-purge/src/core/document_type.c
URL: http://source.netsurf-browser.org/branches/jmb/dom-alloc-purge/src/core/d...
==============================================================================
--- branches/jmb/dom-alloc-purge/src/core/document_type.c (original)
+++ branches/jmb/dom-alloc-purge/src/core/document_type.c Tue Nov 1 17:43:53 2011
@@ -29,6 +29,9 @@
static struct dom_document_type_vtable document_type_vtable = {
{
+ {
+ DOM_NODE_EVENT_TARGET_VTABLE
+ },
DOM_NODE_VTABLE
},
DOM_DOCUMENT_TYPE_VTABLE
Modified: branches/jmb/dom-alloc-purge/src/core/element.c
URL: http://source.netsurf-browser.org/branches/jmb/dom-alloc-purge/src/core/e...
==============================================================================
--- branches/jmb/dom-alloc-purge/src/core/element.c (original)
+++ branches/jmb/dom-alloc-purge/src/core/element.c Tue Nov 1 17:43:53 2011
@@ -38,6 +38,9 @@
struct dom_element_vtable _dom_element_vtable = {
{
+ {
+ DOM_NODE_EVENT_TARGET_VTABLE
+ },
DOM_NODE_VTABLE_ELEMENT
},
DOM_ELEMENT_VTABLE
Modified: branches/jmb/dom-alloc-purge/src/core/entity_ref.c
URL: http://source.netsurf-browser.org/branches/jmb/dom-alloc-purge/src/core/e...
==============================================================================
--- branches/jmb/dom-alloc-purge/src/core/entity_ref.c (original)
+++ branches/jmb/dom-alloc-purge/src/core/entity_ref.c Tue Nov 1 17:43:53 2011
@@ -21,6 +21,9 @@
};
static struct dom_node_vtable er_vtable = {
+ {
+ DOM_NODE_EVENT_TARGET_VTABLE
+ },
DOM_NODE_VTABLE
};
Modified: branches/jmb/dom-alloc-purge/src/core/node.c
URL: http://source.netsurf-browser.org/branches/jmb/dom-alloc-purge/src/core/n...
==============================================================================
--- branches/jmb/dom-alloc-purge/src/core/node.c (original)
+++ branches/jmb/dom-alloc-purge/src/core/node.c Tue Nov 1 17:43:53 2011
@@ -54,6 +54,9 @@
dom_node_internal *replacement);
static struct dom_node_vtable node_vtable = {
+ {
+ DOM_NODE_EVENT_TARGET_VTABLE
+ },
DOM_NODE_VTABLE
};
Modified: branches/jmb/dom-alloc-purge/src/core/node.h
URL: http://source.netsurf-browser.org/branches/jmb/dom-alloc-purge/src/core/n...
==============================================================================
--- branches/jmb/dom-alloc-purge/src/core/node.h (original)
+++ branches/jmb/dom-alloc-purge/src/core/node.h Tue Nov 1 17:43:53 2011
@@ -170,6 +170,14 @@
dom_user_data_handler handler, void **result);
dom_exception _dom_node_get_user_data(dom_node_internal *node,
dom_string *key, void **result);
+
+/** \todo EventTarget */
+#define DOM_NODE_EVENT_TARGET_VTABLE \
+ NULL, /* add_event_listener */ \
+ NULL, /* remove_event_listener */ \
+ NULL, /* dispatch_event */ \
+ NULL, /* add_event_listener_ns */ \
+ NULL /* remove_event_listener_ns */
#define DOM_NODE_VTABLE \
_dom_node_get_node_name, \
Modified: branches/jmb/dom-alloc-purge/src/core/pi.c
URL: http://source.netsurf-browser.org/branches/jmb/dom-alloc-purge/src/core/p...
==============================================================================
--- branches/jmb/dom-alloc-purge/src/core/pi.c (original)
+++ branches/jmb/dom-alloc-purge/src/core/pi.c Tue Nov 1 17:43:53 2011
@@ -21,6 +21,9 @@
};
static struct dom_node_vtable pi_vtable = {
+ {
+ DOM_NODE_EVENT_TARGET_VTABLE
+ },
DOM_NODE_VTABLE
};
Modified: branches/jmb/dom-alloc-purge/src/core/text.c
URL: http://source.netsurf-browser.org/branches/jmb/dom-alloc-purge/src/core/t...
==============================================================================
--- branches/jmb/dom-alloc-purge/src/core/text.c (original)
+++ branches/jmb/dom-alloc-purge/src/core/text.c Tue Nov 1 17:43:53 2011
@@ -23,6 +23,9 @@
struct dom_text_vtable text_vtable = {
{
{
+ {
+ DOM_NODE_EVENT_TARGET_VTABLE,
+ },
DOM_NODE_VTABLE
},
DOM_CHARACTERDATA_VTABLE
Modified: branches/jmb/dom-alloc-purge/src/events/event.h
URL: http://source.netsurf-browser.org/branches/jmb/dom-alloc-purge/src/events...
==============================================================================
--- branches/jmb/dom-alloc-purge/src/events/event.h (original)
+++ branches/jmb/dom-alloc-purge/src/events/event.h Tue Nov 1 17:43:53 2011
@@ -22,7 +22,7 @@
};
/**
- * The Event Ojbect
+ * The Event Object
*/
struct dom_event {
dom_string *type; /**< The type of the event */
@@ -37,7 +37,7 @@
dom_string *namespace; /**< The namespace of this event */
dom_document *doc;
- /**< The document which create this event */
+ /**< The document which created this event */
bool stop; /**< Whether stopPropagation is called */
bool stop_now; /**< Whether stopImmediatePropagation is called */
Modified: branches/jmb/dom-alloc-purge/src/events/event_target.h
URL: http://source.netsurf-browser.org/branches/jmb/dom-alloc-purge/src/events...
==============================================================================
--- branches/jmb/dom-alloc-purge/src/events/event_target.h (original)
+++ branches/jmb/dom-alloc-purge/src/events/event_target.h Tue Nov 1 17:43:53 2011
@@ -66,11 +66,24 @@
dom_exception _dom_dispatch_node_change_event(dom_document *doc,
dom_event_target *et, dom_event_target *related,
dom_mutation_type change, bool *success);
+#define _dom_dispatch_node_change_event(doc, et, related, change, success) \
+ _dom_dispatch_node_change_event((dom_document *) (doc), \
+ (dom_event_target *) (et), \
+ (dom_event_target *) (related), \
+ (dom_mutation_type) (change), \
+ (bool *) (success))
/* Dispatch a DOMCharacterDataModified event */
dom_exception _dom_dispatch_characterdata_modified_event(
dom_document *doc, dom_event_target *et,
dom_string *prev, dom_string *new, bool *success);
+#define _dom_dispatch_characterdata_modified_event(doc, et, \
+ prev, new, success) \
+ _dom_dispatch_characterdata_modified_event((dom_document *) (doc), \
+ (dom_event_target *) (et), \
+ (dom_string *) (prev), \
+ (dom_string *) (new), \
+ (bool *) (success))
/* Dispatch a DOMAttrModified event */
dom_exception _dom_dispatch_attr_modified_event(dom_document *doc,
@@ -78,10 +91,24 @@
dom_string *new, dom_event_target *related,
dom_string *attr_name, dom_mutation_type change,
bool *success);
+#define _dom_dispatch_attr_modified_event(doc, et, prev, new, \
+ related, attr_name, change, success) \
+ _dom_dispatch_attr_modified_event((dom_document *) (doc), \
+ (dom_event_target *) (et), \
+ (dom_string *) (prev), \
+ (dom_string *) (new), \
+ (dom_event_target *) (related), \
+ (dom_string *) (attr_name), \
+ (dom_mutation_type) (change), \
+ (bool *) (success))
/* Dispatch a DOMSubtreeModified event */
dom_exception _dom_dispatch_subtree_modified_event(dom_document *doc,
dom_event_target *et, bool *success);
+#define _dom_dispatch_subtree_modified_event(doc, et, success) \
+ _dom_dispatch_subtree_modified_event((dom_document *) (doc), \
+ (dom_event_target *) (et), \
+ (bool *) (success))
/* Dispatch a generic event */
dom_exception _dom_dispatch_generic_event(dom_document *doc,
11 years, 7 months