Ben Kurtovic
8e7a600b51
Fix use-after-free bug.
пре 9 година
Ben Kurtovic
5eac0ab16f
More PEP 393 work; update Textbuffer interface and usage.
пре 9 година
Ben Kurtovic
2072a10b67
More reworking of CTokenizer Unicode support (incomplete)
пре 9 година
Ben Kurtovic
7345a3742e
Fix a thread safety issue involving route state.
пре 9 година
Ben Kurtovic
2005efd309
Split up C tokenizer into tag_data, tok_parse, tok_support, tokens.
пре 9 година
Ben Kurtovic
0e547aa416
Begin splitting up C tokenizer.
пре 9 година
Ben Kurtovic
dad042bc2c
Fix C warnings in MSVC.
пре 9 година
Ben Kurtovic
1d5bbbe25b
Disallow < and > in wikilink titles/template names ( fixes #104 )
пре 9 година
Ben Kurtovic
e71e7b4ece
Update copyright years for 2015; fix whitespace in docs.
пре 9 година
Ben Kurtovic
a00c645bd8
Fix handling of tag closes within <nowiki> ( fixes #89 ).
пре 9 година
Ben Kurtovic
a15f6172c0
Minor bugfix.
пре 10 година
Ben Kurtovic
9fc4b909e1
Refactor a lot of table error recovery code.
пре 10 година
Ben Kurtovic
fb261450d8
Port tokenizer updates to C.
пре 10 година
Ben Kurtovic
640005dbb2
Tokenizer cleanup; make inline table syntax invalid as it should be.
пре 10 година
Ben Kurtovic
913ff590c8
Cleanup; add a missing test.
пре 10 година
Ben Kurtovic
5d29bff918
Remove an incorrect usage of Py_XDECREF().
пре 10 година
Ben Kurtovic
7489253e32
Break at 80 cols for most lines.
пре 10 година
David Winegar
1a4c88e11f
Correctly handle no table endings
Tests were not correctly testing the situations without a table close.
Fixed tests and then fixed tokenizers for failing tests. Also refactored
pytokenizer to more closely match the ctokenizer by only holding the
`_parse` methods in the try blocks and no other code.
пре 10 година
David Winegar
c63108039b
Fix C code to make declarations before statements
Python 3.4 compiles C extensions with the
`-Werror=declaration-after-statement` flag that enforces C90 more
strictly than previous versions. Move all statements after declarations
to make sure this extension builds on 3.4.
пре 10 година
David Winegar
213c105666
Table tags are no longer self-closing
Table tags no longer self-closing. Rows and cells now contain their
contents. Also refactored out an `emit_table_tag` method.
Note: this will require changes to the Tag node and possibly the builder,
those changes will be in the next commit.
пре 10 година
David Winegar
0128b1f78a
Implement CTokenizer for tables
CTokenizer is completely implemented in this commit - it didn't
make much sense to me to split it up. All tests passing, memory test
shows no leaks on Linux.
пре 10 година
David Winegar
2d945b30e5
Use uint64_t for context
For the C tokenizer, include `<stdint.h>` and use `uint64_t` instead
of `int` for context. Changes to tables mean that context can be
larger than 32 bits, and it is possible for `int` to only have 16
bits anyways (though this is very unlikely).
пре 10 година
Ben Kurtovic
6954480263
Fix template parsing when comments are inside the name ( fixes #59 ).
пре 10 година
Ben Kurtovic
ded89fb14e
Add a few unit tests for untested code; remove a useless conditional.
пре 10 година
Ben Kurtovic
b997e4cd71
Support attributes quoted with '; add required quotes in value setter.
пре 10 година
Ben Kurtovic
a4c2fd023a
Remove some useless code in the tokenizers.
пре 10 година
Ben Kurtovic
08cafc0576
Raise ParserError for internal problems. Improve coverage. Cleanup.
пре 10 година
Ben Kurtovic
02eff0fc49
Fully fix #74 . Add another tokenizer test.
пре 10 година
Ben Kurtovic
0497b54f03
Fix _handle_single_tag_end()'s token search order ( fixes #74 )
пре 10 година
Ben Kurtovic
5c5fd6b3cb
Fix a bug involving nested links ( closes #61 and #62 ).
пре 10 година
Ben Kurtovic
1312a1fb8a
Some clean up for Python 2.6 support.
* Removed unittest2 dependency on Python >2.6.
* Moved discover_tests.py into tests/.
* tokenizer.c: Fixed errors noted by -Wshorten-64-to-32.
пре 10 година
Ben Kurtovic
e5f17eea00
Update copyright notices for 2014.
пре 10 година
Ben Kurtovic
1946cf621d
Add a temporary skip_style_tags until we resolve some issues.
пре 11 година
Ben Kurtovic
066049b46a
Update email address.
пре 11 година
Ben Kurtovic
38050f6878
C code cleanup and speed improvements.
пре 11 година
Ben Kurtovic
951a8737a5
Don't pass underlying context if this is a bracketed link.
пре 11 година
Ben Kurtovic
287bf71158
Condense code.
пре 11 година
Ben Kurtovic
1bf9868753
Proper sentinel handling with free links in the C tokenizer.
пре 11 година
Ben Kurtovic
77092e066c
Fix C tokenizer behavior re: some single_only tag edge cases.
пре 11 година
Ben Kurtovic
6784ff73bf
Fix an edge case when we recurse too deeply.
пре 11 година
Ben Kurtovic
4d04cae780
Fix a segfault with GCC.
пре 11 година
Ben Kurtovic
67f1762aa4
Doc updates, and allow passing a starting context to tokenize().
пре 11 година
Ben Kurtovic
f1b95758d6
Squash a memory leak.
пре 11 година
Ben Kurtovic
2561cf5b5e
Fix all bugs in C implementation of external links.
пре 11 година
Ben Kurtovic
c1b502bbe6
Finish external links implementation.
пре 11 година
Ben Kurtovic
7dcfa3fe92
Implement Tokenizer_really_parse_external_link(), some other fixes
пре 11 година
Ben Kurtovic
6ecf15cad4
Tokenizer_parse_external_link()
пре 11 година
Ben Kurtovic
a1948b06aa
Tokenizer_parse_bracketed/free_uri_scheme(), other adjustments
пре 11 година
Ben Kurtovic
7b84b3f0df
Refactor out C's is_marker(); hooks for ext links.
пре 11 година
Ben Kurtovic
d42e05a554
Implement improved wikilink handling.
пре 11 година