Jonas Fonseca
5808b4ae0c
Make html_top have a pointer type; use it to declare format and par_format
2006-01-09 01:22:33 +01:00
Jonas Fonseca
bc55cd55cb
Add the basic support for rendering RSS documents
...
It is very simple for now, so it only displays headlines and doesn't
support a whole lot of RSS flavours.
2006-01-08 03:44:23 +01:00
Laurent MONIN
31c30864e0
Trim trailing whitespaces.
2006-01-04 18:08:48 +01:00
Jonas Fonseca
359a29bb40
Make it possible to use more CSS properties with the source highlighting
2006-01-04 00:50:40 +01:00
Jonas Fonseca
af72dd8435
Make parse_sgml() return the sgml_parser_code enum
...
It is mostly just ignored for now. The SGML parser test tool will however
return parser code.
2006-01-02 17:40:42 +01:00
Jonas Fonseca
f608e2a0ae
Add the concept of completeness to strings being parsed and scanned
...
... not used yet.
2006-01-02 02:08:20 +01:00
Laurent MONIN
54997c506f
Drop trailing whitespaces.
2006-01-02 00:15:20 +01:00
Jonas Fonseca
021af4e87c
Although aware ELinks doesn't need another sgml/doctype here is DocBook
...
It was created a long time ago so (I think) it deserves to survive. It
maps .sgml files to applicatino/docbook+xml and uses the highlighter.
2006-01-01 23:22:10 +01:00
Jonas Fonseca
7d64cb893c
Improve (or rather fix) how document types are matched in the DOM renderer
2006-01-01 23:14:16 +01:00
Jonas Fonseca
c656a96a73
Use the simpler strcasecmp() instead of strcaselcmp()
2006-01-01 23:05:34 +01:00
Jonas Fonseca
479039fb9e
Also highlight HTML if the MIME type is application/xhtml+xml
2006-01-01 23:02:41 +01:00
Jonas Fonseca
9a0bf83756
Add basic stuff for XBEL parsing/highlighting using the DOM engine
2005-12-30 22:19:32 +01:00
Jonas Fonseca
ff75d5086f
Remove the DOM track tracer from the renderer
2005-12-30 13:08:42 +01:00
Jonas Fonseca
6e163b186c
Make the dom_scanner_token store it's string in a dom_string struct
2005-12-28 16:23:36 +01:00
Jonas Fonseca
d1e275be52
Make parse_sgml() take buffer as dom_string struct
2005-12-28 15:21:45 +01:00
Jonas Fonseca
11e168aba4
Make init_sgml_parser() take URI as dom_string struct
2005-12-28 15:19:10 +01:00
Jonas Fonseca
a21f192199
Remove some left over .vimrc files
2005-12-28 14:14:12 +01:00
Jonas Fonseca
71533eef9a
Elute all DOM-related code and put it in src/dom
2005-12-28 14:05:14 +01:00
Jonas Fonseca
217f905d88
call_dom_stack_callbacks(): Only acquire the state data if needed
2005-12-27 15:22:06 +01:00
Jonas Fonseca
a31eaaabdd
Rename parse_sgml_document() -> parse_sgml_plain()
...
It really can be anything. I visited the elusive HTML parser to find the
new ending. ;)
2005-12-27 06:22:53 +01:00
Jonas Fonseca
9e7dfb1ddf
Make walk_dom_nodes() use a stack context; reduces the DOM stack state size
2005-12-27 06:04:01 +01:00
Jonas Fonseca
a4831fef2d
Make it easier to work with DOM stack contexts outside of the callbacks
...
The problem is to get access to the context when it is not the first one
and it has to happen outside of the context callbacks. This changes the
memory management so that the context adder returns the context. To further
improve the use of contexts add a context destructor which makes it
possible to unregister (temporary) contexts.
2005-12-27 05:59:12 +01:00
Jonas Fonseca
774aa70c6f
Drop (now) unused get_dom_stack_parent() wrapper for get_dom_stack_state()
2005-12-27 04:44:20 +01:00
Jonas Fonseca
af19f811e3
Simplify DOM node popping
...
.. by turning do_pop_dom_node() into pop_dom_node() and let pop_dom_state()
handle it's own logic for reaching the wanted state.
2005-12-27 04:42:28 +01:00
Jonas Fonseca
f371de1638
Restructure the SGML parser file and add comments to the main parts
2005-12-27 03:57:56 +01:00
Jonas Fonseca
f5b32f86d1
Drop some dead code related to past rendering of DOM attribute nodes
2005-12-27 03:55:34 +01:00
Jonas Fonseca
b36229c222
Drop some unneeded #includes
2005-12-27 03:33:49 +01:00
Jonas Fonseca
0e2eefcb82
Add missing HTML_(SCRIPT, ...) definition
2005-12-27 01:58:54 +01:00
Jonas Fonseca
74a0a7b174
Highlight the 'CDATA' part of <![CDATA[ (in a bit hacky way)
2005-12-26 20:51:01 +01:00
Jonas Fonseca
c99b1cc2cc
Render content of CDATA sections with orange2 (in lack of something better)
2005-12-26 19:56:07 +01:00
Jonas Fonseca
e28f3fc592
Drop macros in favour of more informative direct calls to add_sgml_node()
2005-12-26 19:45:58 +01:00
Jonas Fonseca
98d7263c2f
Parse <[CDATA[ sections ]]>
2005-12-26 19:43:32 +01:00
Miciah Dashiel Butler Masters
92c9b86374
In add_document_line, check expanded + line_pos rather than just
...
expanded when checking whether there are enough characters on the line
to decrement expanded by 2. This fixes the problem reported by fonseca
where the linked text was offset from the URI when there were backspaces
earlier on the line.
2005-12-26 11:43:18 +00:00
Miciah Dashiel Butler Masters
e64871f5e2
Drop some dead code in add_document_line: line_pos should never be
...
negative.
2005-12-26 10:31:06 +00:00
Jonas Fonseca
be8c68c5f7
Fix matching of file:// URLs which of course have no host name
2005-12-25 16:22:20 +01:00
Jonas Fonseca
5dd9061a55
Allocate the string of nodes being 'linkified'
...
This makes the string actually NUL terminated at the right place and the
matching will never go beyond the text region of the node. One example is
<!--http://elinks.cz/-- > which didn't work before.
2005-12-25 16:08:00 +01:00
Jonas Fonseca
2d020e4879
Extend the URL_REGEX to allow more protocol and stuff like %XX in path part
...
Thanks to peder for suggestions.
2005-12-25 15:45:47 +01:00
Jonas Fonseca
4fa0937ca5
Make URL inside cdata, comment and text nodes accessible
...
It depends on existence of <regex.h> system header and that can be enabled
via document.plain.display_links. The URL regex was supplied by yanek.
2005-12-25 15:16:21 +01:00
Jonas Fonseca
dda6064b47
Add support for nested calls to parse_sgml()
...
It introduces a secondary stack for the SGML parser which records a parsing
in progress (stuff like the scanner and depth where the parsing began).
This should make it possible to eventually call parse_sgml() with the
output created from the ECMASCript's document.write() function or even
output from processing instructions (for example <?php code ?> ;).
2005-12-25 05:43:01 +01:00
Jonas Fonseca
cb90dcd58c
Remove unused variable
2005-12-25 05:19:55 +01:00
Jonas Fonseca
f2ba5e7f6b
Cleanup and remove unnneded code
2005-12-25 04:40:58 +01:00
Jonas Fonseca
40ae683bfb
match_attribute_value(): Actually do the matching
...
This is still untested like the last patch.
2005-12-25 04:38:30 +01:00
Jonas Fonseca
fc35d9ee33
Implement matching of element relations for DOM selection
...
It requires searching the select_data stack for all matches of the parent
selector and check the properties of matched nodes.
2005-12-25 03:48:53 +01:00
Jonas Fonseca
1347678988
Introduce get_dom_node_list_index() to lookup the index of a node in a list
2005-12-25 03:46:01 +01:00
Jonas Fonseca
d36b2d8a36
get_dom_select_data(): Move macro nearer to its users
2005-12-25 02:43:08 +01:00
Jonas Fonseca
ce2aa08cb1
Compile fix
2005-12-24 13:07:57 +01:00
Jonas Fonseca
8d30613a7f
The child node list can be NULL when matching for the :empty pseudo-class
...
Also use the children node list and not the attribute list (aka the map).
2005-12-23 01:03:39 +01:00
Jonas Fonseca
3ea1b30fd6
Fix matching of the :root structural pseudo-class
...
Root nodes either have no parents or are the single child of the document
node.
2005-12-23 00:59:56 +01:00
Jonas Fonseca
755108cf95
Tidyup
2005-12-23 00:53:31 +01:00
Jonas Fonseca
4d6223f6a4
Oops, compile fix
2005-12-23 00:52:52 +01:00
Jonas Fonseca
12d34fd133
Factor out code to new match_element_selector()
...
'Twill make it easier to do the logic.
2005-12-23 00:51:57 +01:00
Jonas Fonseca
07fc481607
match_attribute_selectors(): Factor out matching of values to own function
2005-12-23 00:11:25 +01:00
Jonas Fonseca
262856273e
Drop unused get_dom_node_attributes(), comment get_dom_node_list()
2005-12-22 23:42:23 +01:00
Jonas Fonseca
faa85adf73
dom_select_push_element(): Use dom_node_casecmp() and drop homegrown one
2005-12-22 23:40:11 +01:00
Jonas Fonseca
1f47fabf5e
Rename dom_node_cmp() to dom_node_casecmp() and make it public
2005-12-22 23:37:59 +01:00
Jonas Fonseca
b13a21bbc2
dom_node_cmp(): Make it into a general node comparer
2005-12-22 23:35:17 +01:00
Jonas Fonseca
6dfd7a5988
When searching DOM node lists store the subtype in the search struct's node
2005-12-22 23:29:07 +01:00
Jonas Fonseca
558e2736e4
search_dom_stack(): Use dom_string_casecmp() for comparison
2005-12-22 22:28:38 +01:00
Jonas Fonseca
c4a1031b2e
Move code for the final source highlight flushing to document pop callback
...
This requires the document root stack state is made mutable and is popped.
Should make render_dom_document() more generalised. For SGML_PARSER_STREAM
this has the fun property that the stack will magically free the root node.
2005-12-22 12:33:27 +01:00
Jonas Fonseca
6f3f859578
parse_sgml(): After parsing pop the stack back to the depth it was before
2005-12-22 12:28:22 +01:00
Jonas Fonseca
4eae1d4882
Add a few comment and remove an obsolete one
2005-12-22 04:00:55 +01:00
Jonas Fonseca
9c720c2cc8
Rename the DOM tree renderer to DOM stack tracer
...
Use add_dom_stack_tracer(stack) to have stack activity traced. It is only
active when DOM_STACK_TRACE is defined.
2005-12-22 03:55:55 +01:00
Jonas Fonseca
cb64068712
Make it so that the indent string used by the tree renderer needs no init
2005-12-22 03:33:56 +01:00
Jonas Fonseca
f21fcd132f
Oops, do not define DOM_TREE_RENDERER by default
2005-12-22 03:21:52 +01:00
Jonas Fonseca
6cb9a841b6
Add FIXME about optimizing walk_dom_nodes()
2005-12-22 03:20:11 +01:00
Jonas Fonseca
eab6c19bbe
Add lots of comments and FIXMEs
2005-12-22 03:19:53 +01:00
Jonas Fonseca
25e0a18b7f
Misc DOM select fixes
...
- ensure done_dom_stack() is called after parsing is done
- get_dom_select_data(): Use stack->current->data since it is used within
dom_stack_callback_T
- dom_select_pop_element(): Use stack->contexts since it is the
select_data stack and it owns the first context
- add the select_data context to the right stack
- fix some comments
2005-12-21 23:26:22 +01:00
Jonas Fonseca
45592ea5a7
Make the DOM tree renderer thing usable without a dom_renderer defined
...
It now hardcodes the codepage to ASCII when showing entity references.
The tree debug context info is also exported.
2005-12-21 22:32:27 +01:00
Jonas Fonseca
d6c5640f29
Turn the DOM tree renderer into a debug module
...
Define DOM_TREE_RENDERER and run as:
ELINKS_LOG=/tmp/dom-dump.txt ./elinks -no-connect <url>
to have a trace of DOM tree dumped into a file.
2005-12-21 14:41:28 +01:00
Jonas Fonseca
fe6637dd7d
Fix the DOM tree renderer to work with the new stack interface
2005-12-21 14:05:01 +01:00
Jonas Fonseca
419d9d165a
get_dom_stack_state_data(): Make static inline and handle zero object size
2005-12-21 13:56:18 +01:00
Jonas Fonseca
9360f88d65
search_dom_stack(): No need to inline this at least not while debugging
2005-12-21 13:48:37 +01:00
Jonas Fonseca
779a8a4553
Improve comments
2005-12-21 13:46:28 +01:00
Jonas Fonseca
edee14699e
Reorder some struct and fix some comments
2005-12-21 04:57:25 +01:00
Jonas Fonseca
2a24ad9099
Introduce enum dom_stack_flag to make init_dom_stack() more obvious
2005-12-21 04:48:50 +01:00
Jonas Fonseca
632f12f82a
init_dom_stack(): Drop unused object_size argument
2005-12-21 04:41:35 +01:00
Jonas Fonseca
f8d48e81eb
Move the state_objects to the DOM stack contexts
...
This way all contexts are now separated, almost.
2005-12-21 04:38:04 +01:00
Jonas Fonseca
910c51abaf
Remove the now unused DOM stack data member
2005-12-21 03:59:46 +01:00
Jonas Fonseca
da33827771
Use a (for now bogus) DOM stack context for holding DOM select data
2005-12-21 03:57:17 +01:00
Jonas Fonseca
225e3a6764
Use a (for now bogus) DOM stack context for holding the SGML parser data
2005-12-21 03:39:17 +01:00
Jonas Fonseca
87d8c890dd
Define convinience macros for getting parser and parser states from stack
2005-12-21 03:12:35 +01:00
Jonas Fonseca
3374f3cbba
Drop data member from struct sgml_parser it is at stack->current->data
2005-12-21 01:36:47 +01:00
Jonas Fonseca
c524655362
Add current member to struct dom_Stack which holds the current context
2005-12-21 01:32:43 +01:00
Jonas Fonseca
0faa8d7462
Add a data member to struct dom_stack_context (not used yet)
2005-12-21 01:25:50 +01:00
Jonas Fonseca
12a2f96920
Introduce struct dom_Stack_context
...
- For now it just stores the dom_stack_context_info reference.
- Rename dom_stack members to contexts and contexts_size.
- Use mem_alloc_align based rellocation scheme.
2005-12-21 01:15:19 +01:00
Jonas Fonseca
a77242738c
Rename: add_dom_stack_callbacks() -> add_dom_stack_context()
2005-12-21 01:04:37 +01:00
Jonas Fonseca
3843be25af
Rename: struct dom_stack_callbacks -> struct dom_stack_context_info
2005-12-21 00:58:22 +01:00
Jonas Fonseca
5f9583579e
And the SGML parser should not add any callbacks anymore
2005-12-20 21:12:25 +01:00
Jonas Fonseca
0834e77252
Make the DOM renderer add its own DOM stack callbacks
2005-12-20 21:10:09 +01:00
Jonas Fonseca
1228ef8d48
Create the SGML parser->root node on demand
...
This way all callbacks added after init_sgml_parser() will have their
document node push callback invoked.
2005-12-20 21:08:47 +01:00
Jonas Fonseca
625725f0e9
Allow for multiple callbacks to be attached to the DOM stack
2005-12-20 20:27:20 +01:00
Jonas Fonseca
e309de8950
Introduce call_dom_stack_callbacks as a common way to call back
2005-12-20 20:01:18 +01:00
Jonas Fonseca
d6b125fa68
Drop the return value from dom_stack_callback_T
...
... since the feature with popping the node if the return value is NULL is
not used and it doesn't make a lot of sense with multiple callbacks.
2005-12-20 19:48:33 +01:00
Jonas Fonseca
990c5e0a26
Combine DOM stack push and pop callbacks into one struct
2005-12-20 19:20:04 +01:00
Miciah Dashiel Butler Masters
9559871fd0
Add src/document/sgml/rss/Makefile.
2005-12-20 05:29:05 +00:00
Miciah Dashiel Butler Masters
178bc908e1
Drop an unnecessary and non-existent #include, added in commit
...
56d634b946
.
2005-12-20 05:28:36 +00:00
Jonas Fonseca
ec9f41c1cd
Retire specialized proc-instruction DOM renderer callback
...
It now uses the DOM element callback. Before the proc-instruction
attributes was shown twice.
2005-12-20 03:25:51 +01:00
Jonas Fonseca
56d634b946
Add basic support for RSS parsing for application/rss+xml content types
...
This means the RSS source will be highlighted, but by default the HTML
renderer will be used for the default rendering.
2005-12-20 03:08:13 +01:00
Jonas Fonseca
5777941d06
DOM select: Completely rewrite the parser for nth arguments
2005-12-20 01:50:39 +01:00
Jonas Fonseca
c2e30c8eea
get_child_dom_select_node(): Use the foreach_dom_node iterator
2005-12-20 01:48:21 +01:00
Jonas Fonseca
ceffe8f1a4
Make the SGML parser ready for (specializing) doctypes other than HTML
2005-12-20 01:04:33 +01:00
Jonas Fonseca
f6e551379e
Remove some includes which are no longer needed
2005-12-20 00:48:34 +01:00
Jonas Fonseca
8e769d48a5
Misc cleanups and improvements
2005-12-20 00:01:18 +01:00
Jonas Fonseca
3b412553b6
match_attribute_selectors(): Fix warning about uninitialized attr variable
...
Outspitten on FreeBSD.
2005-12-19 22:13:23 +01:00
Jonas Fonseca
2e2c0a590e
Add basic functionality for selecting DOM nodes based on CSS3 selectors
...
The design should more or less be in place. There is still a lot of things
missing but it should actually be enough for using it in a simple RSS renderer.
Amongst several things, :nth-* pseudo-classes and :not() syntax is not in
place.
2005-12-19 03:44:18 +01:00
Jonas Fonseca
b64e122159
Change order of variables given to foreach_dom_node iterators
2005-12-19 02:57:00 +01:00
Jonas Fonseca
330c0174e5
Rename DOM stack iterators and make them include all states when iterating
...
They are now called: foreach{back,}_dom_stack_state (...) and the immutable
flag together with node type restricted stack searches should ensure that
the document root node never is popped.
2005-12-19 02:51:32 +01:00
Jonas Fonseca
051db70dd4
Add boolean immutable flag to the DOM stack state
...
Can be used to ensure the document root node never leaves the stack while
parsing.
2005-12-19 02:34:26 +01:00
Jonas Fonseca
ee1eba9689
Rename: dom_stack_has_parents() -> dom_stack_is_empty() (with negated value)
2005-12-19 02:15:36 +01:00
Jonas Fonseca
bc338207e7
do_pop_dom_node(): move dom_stack_has_parents() to assertion
...
All callers already checks if the stack is empty.
2005-12-19 02:05:43 +01:00
Witold Filipczyk
d09bdf7c28
Fix problem with double decompression of local files
...
ELinks tries decompress local gziped files twice, which causes problems
with some files eg. with this README.gz. This patch prevents it.
2005-12-18 17:03:34 +01:00
Jonas Fonseca
45861c68e1
pop_dom_state(): Drop unused left-over argument
2005-12-15 22:05:30 +01:00
Jonas Fonseca
ef5d5fc27a
dom_node_cmp(): Only use element or attribute type ID if both are set
2005-12-15 22:02:02 +01:00
Jonas Fonseca
c2d27a33d8
Rename: nav -> stack
2005-12-15 17:24:20 +01:00
Jonas Fonseca
5ef041c051
Redo the assertm() message to just show the type of the node and parent
2005-12-13 20:08:58 +01:00
Jonas Fonseca
2eebef098d
Prepare the CSS scanner for tokenizing ~ and + as char tokens
...
They are used for "E ~ F" and "E + F" element relations.
2005-12-13 16:35:41 +01:00
Jonas Fonseca
d1635d6970
Fix wrong assertion message string
...
You just cannot print dom_string structs with %s.
2005-12-13 16:33:50 +01:00
Jonas Fonseca
f35026ecfb
Add DOM_NODE_UNKNOWN node type for internal purposes only
2005-12-13 04:52:47 +01:00
Jonas Fonseca
771a2eea82
Prepare the CSS scanner for parsing [foo{|,*,^,$,}=bar] selectors
2005-12-13 04:50:30 +01:00
Jonas Fonseca
5ff0849eb3
set_dom_string(): take length as size_t; -1 means use strlen() to get size
2005-12-12 17:42:26 +01:00
Jonas Fonseca
27116d6385
Make the DOM stack and the SGML parser interface more general
...
They now both hold a single private data member. This means the parser now
holds the renderer data.
2005-12-12 17:41:09 +01:00
Jonas Fonseca
458fc5ee79
Review and change dom_string specific uint16_t value to size_t
2005-12-10 22:24:30 +01:00
Jonas Fonseca
c1136b8791
Use dom_string for storing sgml_node_info data
...
Reduces code redundancy for node searching. Oh, comment the purpose
of the special SGML_NODE_HEAD() macro.
2005-12-10 21:58:59 +01:00
Jonas Fonseca
cdc749def3
get_dom_node_value(): indent switch
2005-12-10 21:50:40 +01:00
Jonas Fonseca
86c9a37810
Factor out dom_string_casecmp()
2005-12-10 21:49:33 +01:00
Jonas Fonseca
87aad88c96
Use dom_string throughout the DOM stack interface
2005-12-10 21:42:49 +01:00
Jonas Fonseca
0fab644bee
get_dom_node_value(): move non-compliant functionality to the tree renderer
...
Entity references are supposed to have a null value and the string
compression is for improving the tree view.
2005-12-10 21:37:47 +01:00
Jonas Fonseca
52f5276f92
get_dom_node_name(): indent switch statement
2005-12-10 20:05:01 +01:00
Jonas Fonseca
295679a5e6
get_dom_node_name(): return struct dom_string *
...
Also, simplify the rendering a bit for now.
2005-12-10 20:03:43 +01:00
Jonas Fonseca
7d6db6b152
Update the DOM tree renderer to support dom_strings
2005-12-10 19:44:01 +01:00
Jonas Fonseca
2aedeb0a67
get_dom_node_type_name(): return struct dom_string *
2005-12-10 19:28:37 +01:00
Jonas Fonseca
5f69255cbc
get_dom_node_map_entry(): take name as a dom_string
...
Requires that dom_string->length becomes a size_t.
2005-12-10 19:21:12 +01:00
Jonas Fonseca
0546759b4b
Use struct dom_string for node->proc_instruction.instruction
2005-12-10 18:59:17 +01:00
Jonas Fonseca
9935bf2083
Convert some yet unused strings to use the dom_string struct
...
Also remove the unneeded path member from the dom_node_id_item struct. It
was obsoleted by the addition of dom_node->parent.
2005-12-10 18:51:08 +01:00
Jonas Fonseca
ed7a292966
Use struct dom_string for node->attribute.value
2005-12-10 18:42:54 +01:00
Jonas Fonseca
ce3778c3c0
Add struct dom_string
...
In time it should be used for all strings in the DOM engine.
For now it is just used for node->string.
2005-12-10 18:37:47 +01:00
Miciah Dashiel Butler Masters
f9dea85126
Drop a line that should have been dropped with commit
...
3719e75068
, 'Reduce code redundancy.'
2005-12-10 16:24:54 +00:00
Laurent MONIN
20cb9ad9ee
html_option(): optimize code.
2005-12-08 16:33:37 +01:00
Laurent MONIN
8fe86a1a63
Drop trailing spaces.
2005-12-08 16:27:51 +01:00
Laurent MONIN
3719e75068
Reduce code redundancy.
2005-12-08 16:26:37 +01:00
Laurent MONIN
1f7aa841aa
Simplify tests.
2005-12-08 16:25:22 +01:00
Laurent MONIN
d9f0de82f8
Use closing_tag variable in tests.
2005-12-08 16:22:53 +01:00
Laurent MONIN
37ec65247d
Minor code reordering.
2005-12-08 16:20:13 +01:00
Laurent MONIN
279f2bec93
Goto see instead of se.
2005-12-08 16:19:20 +01:00
Laurent MONIN
a499bf5a61
Introduce closing_tag variable.
2005-12-08 16:16:28 +01:00
Laurent MONIN
ae00f391f2
t_name -> name, t_namelen -> namelen.
2005-12-08 16:13:21 +01:00
Laurent MONIN
5f66f98b66
Prevent useless tests when @namelen is 0.
2005-12-08 16:11:19 +01:00
Jonas Fonseca
8aa078393a
Move dom_node_data union outside the dom_node struct
2005-12-08 03:26:34 +01:00
Jonas Fonseca
45958b773a
Merge with dom-stack-keep-nodes
2005-12-08 03:07:20 +01:00
Jonas Fonseca
4480a9a4cd
Removes node from the DOM tree when using the SGML stream parser
...
That should free up some short-term memory.
Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
2005-12-08 03:02:27 +01:00