summaryrefslogtreecommitdiff
path: root/src/treebuilder/in_body.c
Commit message (Collapse)AuthorAgeFilesLines
* Added support for template tag. However, the client currently doesn't ↵Rupinder Singh Khokhar2014-08-011-29/+40
| | | | support it. Hence, the only thing left to be done is to callback the client during insert_element, taking proper care of the template tags
* Fixed a bug in cdata block tokenisation. Also fixed handling of br close tag ↵Rupinder Singh Khokhar2014-08-011-1/+3
| | | | in body
* Correctly handled NULL characters at some placesRupinder Singh Khokhar2014-08-011-0/+4
|
* This is perhaps the best way to treat an incoming script content_model_flag. ↵Rupinder Singh Khokhar2014-08-011-3/+3
| | | | Black-boxing is mantained, & a switch is allowed only to a script data state. Script content model can't be incorporated in the style of rcdata & rawtext data, wherein it was easy to make a 1to1 matching between handlers and states. Also fixed the tokeniser to properly handle script tags. tokeniser was earlier modified in commit 7b6b8eb6fcbdd175540902ca699e7e704b90f9e0, has now been tested & bugs removed. Additionaly, in every loop of the dispatcher, it will be checked whether it is safe for tokeniser to process CDATA, and corresponding opts on the tokeniser will be set. this may slow the library down because of repeated checking in every loop. The tokeniser code has become unbearably messy due to the script tags, so a little tiding up & optimisation will be done later ;)
* Fixed dd/dt/li start tag handler once again. Also fixed resting of insertion ↵Rupinder Singh Khokhar2014-08-011-5/+5
| | | | mode. Also fixed some things in after_after_frameset state
* Fixed some misplaced tags in in_body insertion mode. Also improved support ↵Rupinder Singh Khokhar2014-08-011-31/+50
| | | | for appending attributes to an element already in the stack
* Small fix to handle rp/rt start tag in bodyRupinder Singh Khokhar2014-08-011-1/+24
|
* Added support to get attribute names & values from the context. This slows ↵Rupinder Singh Khokhar2014-08-011-4/+49
| | | | down the library a very little bit. Optimizations will be done later.
* fixed handlers of table related and select related elementsRupinder Singh Khokhar2014-08-011-3/+3
|
* added provision to get quirks mode of document from treebuilder, assuming ↵Rupinder Singh Khokhar2014-08-011-1/+7
| | | | treebuilder has one document associated with it. Also fixed table endtag handler in in_table insertion mode. Also fixed table starttag handler in in_body insertion mode
* fixed isindex and form start tag handlersRupinder Singh Khokhar2014-08-011-62/+70
|
* Fixed enumerator entries & name-type mapping. Also fixed the option/optgroup ↵Rupinder Singh Khokhar2014-08-011-7/+15
| | | | tag starting handler. Also emitted on encountering a '<' in script related state. Also fixed the check for special element.
* Fixing some steps in table insertion mode, handling input tagsRupinder Singh Khokhar2014-08-011-1/+21
|
* small fix to handle the param tag openRupinder Singh Khokhar2014-08-011-1/+4
|
* fixed content model switch at a place. Also added another step to handle xmp ↵Rupinder Singh Khokhar2014-08-011-0/+5
| | | | in body
* fixed dd,dt&li handler. Also fixed the scoping lists. Also added a missing ↵Rupinder Singh Khokhar2014-08-011-31/+33
| | | | summary tag to the start tag processor conditional.
* Fixed The adoption agency & related thingsRupinder Singh Khokhar2014-08-011-32/+63
|
* Random rumblings-- unclean commitRupinder Singh Khokhar2014-08-011-43/+35
|
* Remove client allocation function and update for new lpu API.Michael Drake2013-12-141-12/+10
|
* Fix build with GCC 4.6John Mark Bell2011-07-261-52/+19
| | | | svn path=/trunk/hubbub/; revision=12628
* Fix use of uninitialised variable caused by braindead variable naming.John Mark Bell2009-05-271-3/+3
| | | | svn path=/trunk/hubbub/; revision=7583
* Merged revisions 7071-7082 via svnmerge from John Mark Bell2009-04-151-260/+278
| | | | | | | | | | | | | | | | svn://source.netsurf-browser.org/branches/jmb/hubbub-errors ........ r7077 | jmb | 2009-04-15 11:32:43 +0100 (Wed, 15 Apr 2009) | 2 lines Don't bother attempting to allow restarting the parser after an error in the treebuilder. It's far too complicated. ........ r7078 | jmb | 2009-04-15 11:46:12 +0100 (Wed, 15 Apr 2009) | 2 lines Document what should happen in exceptional circumstances ........ svn path=/trunk/hubbub/; revision=7083
* Manually merge r7070 into trunkJohn Mark Bell2009-04-151-407/+720
| | | | svn path=/trunk/hubbub/; revision=7082
* Sync treebuilder with specJohn Mark Bell2009-03-101-123/+254
| | | | svn path=/trunk/hubbub/; revision=6764
* Fix bug 2673645John Mark Bell2009-03-091-2/+5
| | | | | | <form><option>foo</option></form> => abort. svn path=/trunk/hubbub/; revision=6746
* Squash more doxygen warnings. Don't use html tags in comments, folks.John Mark Bell2009-01-081-25/+23
| | | | svn path=/trunk/hubbub/; revision=5997
* Use doxygen to create API documentation.John Mark Bell2009-01-081-2/+5
| | | | | | Add a bunch of extra commentary to stop doxygen warning. svn path=/trunk/hubbub/; revision=5994
* C89François Revel2008-11-301-27/+25
| | | | svn path=/trunk/hubbub/; revision=5843
* Remove reminders to support UTF-16, since we don't need to anymore.Andrew Sidwell2008-08-111-4/+0
| | | | svn path=/trunk/hubbub/; revision=5009
* Simplify in_head.c; make sure return codes from handle_in_head() get ↵Andrew Sidwell2008-08-101-1/+1
| | | | | | propagated properly. svn path=/trunk/hubbub/; revision=4990
* Switch to using hubbub_error for reprocessing state from just a bool, to ↵Andrew Sidwell2008-08-101-10/+10
| | | | | | allow for encoding change info to be returned more easily. svn path=/trunk/hubbub/; revision=4989
* Remove process_in_head(), since it was identical in behaviour to ↵Andrew Sidwell2008-08-101-1/+1
| | | | | | handle_in_head(). Remove prototypes for functions no longer existent. svn path=/trunk/hubbub/; revision=4987
* Remove some commented-out code that doesn't reflect the spec's intention. ↵Andrew Sidwell2008-08-091-11/+3
| | | | | | Filed a bug upstream on the issue so the spec's wording can be fixed. (http://www.w3.org/Bugs/Public/show_bug.cgi?id=5944) svn path=/trunk/hubbub/; revision=4976
* Make scripting enable flag configurableJohn Mark Bell2008-08-041-2/+3
| | | | svn path=/trunk/hubbub/; revision=4895
* Merged revisions 4631-4838 via svnmerge from John Mark Bell2008-07-311-40/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | svn://source.netsurf-browser.org/branches/takkaria/hubbub-parserutils ........ r4631 | takkaria | 2008-07-13 12:54:30 +0100 (Sun, 13 Jul 2008) | 2 lines Initial hatchet job moving to libparserutils (search and replace and a bit of cleaning up). This doesn't compile. ........ r4632 | takkaria | 2008-07-13 15:28:52 +0100 (Sun, 13 Jul 2008) | 2 lines libparserutilize everything up to the "before attribute name" state. (Not compiling) ........ r4633 | takkaria | 2008-07-13 15:32:14 +0100 (Sun, 13 Jul 2008) | 2 lines Replace all uses of "current_{comment|chars}" with just "chars". ........ r4634 | takkaria | 2008-07-13 16:12:06 +0100 (Sun, 13 Jul 2008) | 2 lines Fix lots of compile errors, lpuise "before attribute name" state. ........ r4636 | takkaria | 2008-07-13 17:23:17 +0100 (Sun, 13 Jul 2008) | 2 lines Finish lpuising the tag states, apart from character references. ........ r4637 | takkaria | 2008-07-13 19:58:52 +0100 (Sun, 13 Jul 2008) | 2 lines lpuise the comment states. ........ r4638 | takkaria | 2008-07-13 20:04:31 +0100 (Sun, 13 Jul 2008) | 2 lines Switch to setting hubbub_string::len to 0 instead of hubbub_string::ptr to NULL to indicate an empty buffer, as it was previously. ........ r4639 | takkaria | 2008-07-13 21:02:11 +0100 (Sun, 13 Jul 2008) | 2 lines "lpu up" about half of the DOCTYPE handling stages. ........ r4640 | takkaria | 2008-07-13 21:23:00 +0100 (Sun, 13 Jul 2008) | 2 lines Finish off LPUing the doctype modes. ........ r4641 | takkaria | 2008-07-13 21:37:33 +0100 (Sun, 13 Jul 2008) | 2 lines The tokeniser uses lpu apart from the entity matcher, now. ........ r4643 | takkaria | 2008-07-14 01:20:36 +0100 (Mon, 14 Jul 2008) | 2 lines Fix up the character reference matching stuff--still not properly dealt with, but compiles futher. ........ r4644 | takkaria | 2008-07-14 01:24:49 +0100 (Mon, 14 Jul 2008) | 2 lines Get the tokeniser compiling in its LPU'd form. ........ r4645 | takkaria | 2008-07-14 01:26:34 +0100 (Mon, 14 Jul 2008) | 2 lines Remember to advance the stream position after emitting tokens. ........ r4646 | takkaria | 2008-07-14 01:34:36 +0100 (Mon, 14 Jul 2008) | 2 lines Nuke the src/input directory and start work on the treebuilder. ........ r4647 | takkaria | 2008-07-14 01:56:27 +0100 (Mon, 14 Jul 2008) | 2 lines Get hubbub building in its LPU'd form. ........ r4648 | takkaria | 2008-07-14 02:41:03 +0100 (Mon, 14 Jul 2008) | 2 lines Get the tokeniser2 testrunner working. ........ r4649 | takkaria | 2008-07-14 02:48:55 +0100 (Mon, 14 Jul 2008) | 2 lines Fix test LDFLAGS so things link properly. ........ r4650 | takkaria | 2008-07-14 16:25:51 +0100 (Mon, 14 Jul 2008) | 2 lines Get testcases compiling, remove ones now covered by libparserutils. ........ r4651 | takkaria | 2008-07-14 16:37:09 +0100 (Mon, 14 Jul 2008) | 2 lines Remove more tests covered by libpu. ........ r4652 | takkaria | 2008-07-14 17:53:18 +0100 (Mon, 14 Jul 2008) | 2 lines Fix up the tokeniser a bit. ........ r4653 | takkaria | 2008-07-14 19:02:15 +0100 (Mon, 14 Jul 2008) | 3 lines - Remove the buffer_handler stuff from hubbub - Add the basics of a buffer for attribute values and text. ........ r4654 | takkaria | 2008-07-14 20:00:45 +0100 (Mon, 14 Jul 2008) | 2 lines Get character references working in attribute values, start trying to make them work in character tokens. ........ r4656 | takkaria | 2008-07-14 23:28:52 +0100 (Mon, 14 Jul 2008) | 2 lines Get entities working a bit better. ........ r4657 | takkaria | 2008-07-14 23:37:16 +0100 (Mon, 14 Jul 2008) | 2 lines Get entities working properly. (!) ........ r4658 | takkaria | 2008-07-14 23:56:10 +0100 (Mon, 14 Jul 2008) | 2 lines Make doctypes work a bit better. ........ r4659 | takkaria | 2008-07-15 00:18:49 +0100 (Tue, 15 Jul 2008) | 2 lines Get DOCTYPEs working. ........ r4660 | takkaria | 2008-07-15 00:26:36 +0100 (Tue, 15 Jul 2008) | 2 lines Fix CDATA sections. ........ r4661 | takkaria | 2008-07-15 01:01:16 +0100 (Tue, 15 Jul 2008) | 2 lines Get comments working again. ........ r4662 | takkaria | 2008-07-15 01:14:19 +0100 (Tue, 15 Jul 2008) | 2 lines Fix EOF in "after attribute name" state. ........ r4664 | takkaria | 2008-07-15 01:30:27 +0100 (Tue, 15 Jul 2008) | 2 lines Put the tests in better order, remove one now superceded with libpu. ........ r4665 | takkaria | 2008-07-15 01:46:29 +0100 (Tue, 15 Jul 2008) | 2 lines Remove a lot of now-redunant clearings of the current stream offset. ........ r4667 | jmb | 2008-07-15 11:56:54 +0100 (Tue, 15 Jul 2008) | 2 lines Completely purge charset stuff from hubbub. Parserutils handles this now. ........ r4677 | takkaria | 2008-07-15 21:03:42 +0100 (Tue, 15 Jul 2008) | 2 lines Get more tests passing, handle NUL bytes in data state. ........ r4694 | takkaria | 2008-07-18 17:55:44 +0100 (Fri, 18 Jul 2008) | 3 lines - Handle CRs correctly in some token states. - Handle NULs correctly in the CDATA state. ........ r4706 | takkaria | 2008-07-19 14:58:48 +0100 (Sat, 19 Jul 2008) | 2 lines Improve the tokeniser2 output a bit. ........ r4721 | takkaria | 2008-07-21 20:57:29 +0100 (Mon, 21 Jul 2008) | 2 lines Get a better framework in place to allow switching to using a buffer mid-collect. This fails a couple of testcases and doesn't implement proper CR or NUL support yet. ........ r4725 | takkaria | 2008-07-23 17:20:07 +0100 (Wed, 23 Jul 2008) | 2 lines Make comment tokens in tokeniser2 display both expected and actual output. ........ r4726 | takkaria | 2008-07-23 19:10:23 +0100 (Wed, 23 Jul 2008) | 4 lines - Add FINISH() macro which stops using buffered character collection. - Make the encoding U+FFFD in UTF-8 a global varabile, for sanity - Make the bogus comment state deal with NULs correctly. ........ r4730 | takkaria | 2008-07-24 00:35:16 +0100 (Thu, 24 Jul 2008) | 2 lines Try to get NUL bytes handled as the spec says. ........ r4731 | takkaria | 2008-07-24 00:40:59 +0100 (Thu, 24 Jul 2008) | 2 lines Get CRs working in the data state. ........ r4732 | takkaria | 2008-07-24 00:47:45 +0100 (Thu, 24 Jul 2008) | 2 lines Set force-quirks correctly when failing to match PUBLIC or SYSTEM in DOCTYPEs. ........ r4773 | takkaria | 2008-07-28 15:34:41 +0100 (Mon, 28 Jul 2008) | 2 lines Fix up the tokeniser, finally. ........ r4801 | takkaria | 2008-07-29 15:59:31 +0100 (Tue, 29 Jul 2008) | 2 lines Refactor macros a bit. ........ r4802 | takkaria | 2008-07-29 16:04:17 +0100 (Tue, 29 Jul 2008) | 2 lines Do s/HUBBUB_TOKENISER_STATE_/STATE_/, for shorter line lengths. ........ r4805 | takkaria | 2008-07-29 16:58:37 +0100 (Tue, 29 Jul 2008) | 4 lines Start cleaning up the hubbub tokeniser; - refactor to use new inline emit_character_token() and emit_current_tag() functions; makes code clearer - check EOF before using the CHAR() macro, so eventually it can be removed. ........ r4806 | takkaria | 2008-07-29 17:45:36 +0100 (Tue, 29 Jul 2008) | 2 lines More cleanup like the previous commit. ........ r4807 | takkaria | 2008-07-29 19:48:44 +0100 (Tue, 29 Jul 2008) | 2 lines Rewrite comment-handling code to be just the one function, whilst updating it to handle CRs and NULs properly. (All comments now always use the buffer.) ........ r4820 | takkaria | 2008-07-30 14:14:49 +0100 (Wed, 30 Jul 2008) | 2 lines Finish off the first sweep of cleaning up and refactoring the tokeniser. ........ r4821 | takkaria | 2008-07-30 15:12:22 +0100 (Wed, 30 Jul 2008) | 2 lines Add copyright statement. ........ r4822 | takkaria | 2008-07-30 17:23:01 +0100 (Wed, 30 Jul 2008) | 2 lines Apply changes made to tokeniser2 to tokeniser3. ........ r4829 | takkaria | 2008-07-31 01:59:07 +0100 (Thu, 31 Jul 2008) | 4 lines - Make the tokeniser save everything into the buffer, at least for now. - Fix logic errors introduced in refactoring - Avoid emitting more tokens than we have to (e.g. instead of emitting "<>" and switching back to the data state, just switch back to the data state and let it take care of it) ........ r4830 | takkaria | 2008-07-31 02:03:08 +0100 (Thu, 31 Jul 2008) | 2 lines Small treebuilder <isindex> fix. ........ r4831 | takkaria | 2008-07-31 02:32:29 +0100 (Thu, 31 Jul 2008) | 2 lines Stop holding on to pointers to character data across treebuilder calls. ........ r4832 | takkaria | 2008-07-31 02:45:09 +0100 (Thu, 31 Jul 2008) | 18 lines Merge revisions 4620-4831 from trunk hubbub to libinputstream hubbub, modulo one change to test/Makefile which makes the linker choke when linking tests. ------------------------------------------------------------------------ r4666 | jmb | 2008-07-15 11:52:13 +0100 (Tue, 15 Jul 2008) | 3 lines Make tree2 perform reference counting. Fix bits of the treebuilder to perform reference counting correctly in the face of *result not pointing to the same object as the node passed in to the treebuilder client callbacks. ------------------------------------------------------------------------ r4668 | jmb | 2008-07-15 12:37:30 +0100 (Tue, 15 Jul 2008) | 2 lines Fully document treebuilder callbacks. ------------------------------------------------------------------------ r4675 | takkaria | 2008-07-15 21:01:03 +0100 (Tue, 15 Jul 2008) | 2 lines Fix memory leak in tokeniser2. ------------------------------------------------------------------------ ........ r4834 | jmb | 2008-07-31 09:57:51 +0100 (Thu, 31 Jul 2008) | 2 lines Fix infinite loop in charset detector ........ r4835 | jmb | 2008-07-31 13:01:24 +0100 (Thu, 31 Jul 2008) | 2 lines Actually store namespaces on formatting list. Otherwise we read uninitialised memory. Add some semblance of filling allocations with junk to myrealloc(). ........ r4836 | jmb | 2008-07-31 13:06:07 +0100 (Thu, 31 Jul 2008) | 2 lines Lose debug again ........ r4837 | jmb | 2008-07-31 15:09:19 +0100 (Thu, 31 Jul 2008) | 2 lines Lose obsolete testdata (this is now part of lpu) ........ svn path=/trunk/hubbub/; revision=4839
* Make tree2 perform reference counting.John Mark Bell2008-07-151-9/+76
| | | | | | Fix bits of the treebuilder to perform reference counting correctly in the face of *result not pointing to the same object as the node passed in to the treebuilder client callbacks. svn path=/trunk/hubbub/; revision=4666
* HTML5's <event-source> is now <eventsource>, so rename EVENT_SOURCE to ↵Andrew Sidwell2008-07-111-1/+1
| | | | | | EVENTSOURCE. svn path=/trunk/hubbub/; revision=4620
* Make at least a good start on SVG support (commented-out in the spec). Move ↵Andrew Sidwell2008-07-111-2/+7
| | | | | | foreign attribute name processing to in_foreign_content.c. svn path=/trunk/hubbub/; revision=4614
* Tune up the foreign element support a bit.Andrew Sidwell2008-07-111-0/+2
| | | | svn path=/trunk/hubbub/; revision=4607
* Turn on basic MathML support.Andrew Sidwell2008-07-111-4/+9
| | | | svn path=/trunk/hubbub/; revision=4606
* Fix an uninitialised namespace value.Andrew Sidwell2008-07-111-0/+1
| | | | svn path=/trunk/hubbub/; revision=4605
* Correctly ignore newline-only tokens in <pre> blocks.Andrew Sidwell2008-07-111-2/+3
| | | | svn path=/trunk/hubbub/; revision=4594
* Fix <isindex> processing.Andrew Sidwell2008-07-111-3/+14
| | | | svn path=/trunk/hubbub/; revision=4590
* Fix up foster parenting a bit more. Make the current table calculated ↵Andrew Sidwell2008-07-111-19/+9
| | | | | | on-the-fly. svn path=/trunk/hubbub/; revision=4586
* Reset current_table properly after shuffling the stack.Andrew Sidwell2008-07-101-0/+10
| | | | svn path=/trunk/hubbub/; revision=4570
* - Handle in_table_foster for element insertion (yet to do comment/character).Andrew Sidwell2008-07-101-2/+2
| | | | | | | - Fix test harness's insert_before() method. - Foster parenting now correctly taints the current table. svn path=/trunk/hubbub/; revision=4568
* Make sure all start tags get their namespace set.Andrew Sidwell2008-07-101-0/+4
| | | | svn path=/trunk/hubbub/; revision=4562
* Remove end-of-line whitespace around the adoption agency algorithm, so I ↵Andrew Sidwell2008-07-101-45/+47
| | | | | | don't end up doing it in future commits by mistake. svn path=/trunk/hubbub/; revision=4560
* Exorcise process_tag_in_body(), and just use handle_in_body() instead. This ↵Andrew Sidwell2008-07-091-39/+0
| | | | | | makes all the tests "pass". svn path=/trunk/hubbub/; revision=4545
* Remove invalid assertion -- </form> may occur in input data before any ↵John Mark Bell2008-07-091-4/+4
| | | | | | <form> is encountered. svn path=/trunk/hubbub/; revision=4541