kc3-lang/md4c

Branch :


Log

Author Commit Date CI Message
c6535ff3 2024-01-10 21:39:24 Fix eof handling in a middle of task list item.
ebbb12e5 2024-01-10 20:29:02 Revert most of PR #168 i.e of the commit f436c3029850c138e54a0de055d61db45130409e. It added bunch of checks all over the place, but most of them shouldn't be needed: If they are true, our internal state is already broken. In other words, those checks are hiding real bugs and making debugging harder. Hopefully the underlying bugs are already fixed in some of previous commits addressing some fuzzing issues, like these: * d775b5103ee130edbd808e21d1da6ca75f76a558 * c6942ef03ed46a67bd9b3af8ce1eefd781622777
d775b510 2024-01-10 18:33:32 More fixes of TABLECELLBOUNDARIES chain handling. Fixes #213.
821477b1 2024-01-10 17:35:46 Fix typo in fuzz-mdhtml.c, preventing oss-fuzz from working.
c6942ef0 2024-01-10 17:31:55 Treat TABLECELLBOUNDARIES chain as special one. It's not an ordinary openers chain as (most of) the others, and md_rollback() must not touch it. Fixes #212.
338e0bb2 2024-01-10 17:30:51 md2html: Add undoc'ed debug option --replay-fuzz. This helps to reproduce issues found by oss-fuzz project.
ca169a92 2024-01-10 12:22:04 Fix HTML renderer to handle neted images correctly. Fixes #210.
47a2ad3d 2024-01-09 11:34:40 added options --html-title and --html-css (#188)
efcfd7e7 2024-01-09 02:32:17 Added MD_SPAN_A_DETAIL.is_autolink (#181) This allows the processor to tell whether an <A> tag is the result of an autolink, and customize its output. For example, I want to emit an autolink of an image URL as an <IMG> tag, and an autolink of a YouTube URL as a video embed.
ecce1715 2024-01-09 18:30:01 add build option for md2html executable (#184) Fixes build error for iOS, you can set BUILD_MD2HTML_EXECUTABLE as OFF Signed-off-by: Dylan <2894220@gmail.com> Co-authored-by: Martin Mitáš <mity@morous.org>
61949ee9 2024-01-09 02:08:48 Update to Unicode 15.1.
38303af3 2024-01-09 00:01:35 Make md_is_html_block_end_condition() reuse the same data... ... as md_is_html_block_start_condition() for the type 1 so we make all tags are used consistently there. Fixes #207.
8699cd5d 2024-01-08 21:58:26 test/hard-soft-breaks.txt: Fix wording.
319631f6 2024-01-08 21:52:30 Don't merge multiple HTML blocks together. Fixes #202.
6ef3be6e 2024-01-08 20:09:57 `MD_FLAG_HARD_SOFT_BREAKS` (#193)
4e5a6e6f 2024-01-08 21:57:40 Update README.md (#198) Added MarkDown Monolith Assembler to the list of software that uses md4c.
f554bf11 2024-01-08 20:55:54 Don't trim HTML block lines (MD_LINE_HTML) (#206) Markdown 0.30 doesn't mandate right-trimming the contents of HTML lines. Doing so is more work and breaks output compatibility with cmark, tested with https://github.com/commonmark/cmark/commit/9393560.
4d2f8a2e 2024-01-08 19:35:53 Add test for issue #201. Seems the issue got fixed by combination of previous commits. Fixes #201.
132c29dc 2024-01-08 19:31:37 Allow indented code block to follow any block except paragraph without a blank line. Fixes #200.
601c8ab7 2024-01-08 19:06:04 Restore parent's block indentation when interruping a list item with double blank line. Fixes #190.
bf2e7d30 2024-01-08 18:19:26 Require CMake 3.5 or newer. The recent versions of CMake started to warn about compatibility with older CMake versions than 3.5.
28f253d7 2024-01-08 18:18:51 Fix some gcc warnings with -pedantic. Fixes #187.
8c5e1906 2023-12-12 19:56:56 Fix windows-32 build.
a9b0b457 2023-12-12 19:44:04 Migrate CI from Travis and Appveyor to Github Workflows.
a27f8dc0 2023-12-12 19:31:30 test/fuzzers.fuzz-mdhtml.c: Remove stale comment.
e9ff661f 2022-01-14 17:34:01 CHANGELOG.md: Link OSS-Fuzz.
7d439d49 2022-01-14 17:32:27 CHANGELOG.md: Fix a typo.
d3c1c0bb 2022-01-14 17:27:05 fuzz-mdhtml.c: Cleanup of the code.
f7c8db75 2022-01-14 11:04:02 md_rollback: Fix dummization of virtual closers. Fixes #173.
6abb7789 2022-01-14 10:13:28 Remove debug messages left by mistake in the previous commit.
62b60979 2022-01-14 10:00:09 Reset TABLECELLBOUNDARIES with ordinary opener chains. This is needed because special handling of '|' is now done also if the wiki-links extension is enabled so the chain is populated even with that extension. Fixes #174.
a470fbf8 2022-01-13 20:34:47 md2html: Change interpretation of --github and --commonmark options. Previously these assigned a set of parser flags with an operator '='. Now '|=' is used so that any preceding options affecting what extensions to allow are not ignored.
db9ab417 2022-01-12 16:16:00 Improve wiki-link parsing. * md_rollback: Restore dummy marks changed to virtual zero-length closers. * md_analyze_links: Be more careful in how we rollback contents of a full wiki link (`[[destination|label]]`). The destination has to be rollbacked completely (MD_ROLBACK_ALL) while the label only with MD_ROLLBACK_CROSSING. Fixes #173.
8dd35762 2022-01-11 20:53:04 md_analyze_dollar: Simplify the function.
4358c40a 2022-01-11 10:28:06 md_lookup_line: Advance to the next line even if the offset... falls into a gap between two lines, instead of returning NULL. Fixes NULL dereference in md_is_link_reference(). This was a regression in 2e9b13cc512b5984b010a7934253702a6763f4f7.
c058e82c 2022-01-10 12:34:57 md_is_table_underline: Fix detection by the end of file. This was a regression in a8bb4d3020eb1cfa07f01241c2aa668d91011cb5.
b42e7f5c 2022-01-10 11:41:25 md_resolve_links: Avoid link ref. def. lookup if... if we know that the bracket pair contains nested brackets. That makes the label invalid anyway, therefore we know that there is no link ref. def. to be found anyway. In case of heavily nested bracket pairs, the lookup could lead to quadratic parsing times. Fixes #172.
7f44e1ad 2022-01-10 10:39:29 pathological_tests.py: Improve code alignment.
2e9b13cc 2022-01-10 03:10:43 md_lookup_line: New function. The function performs a binary search over array of MD_LINE structs to find a line the given offset lives on. Replaced few linear scans for such lines with a call to this function.
f662b26e 2022-01-06 16:27:06 Merge branch 'master' of https://github.com/mity/md4c
cf5fe0c8 2022-01-07 02:27:00 Fix a typo in a docs comment (#170) Should read `propagated` rather than `propgated`.
b3593e7d 2022-01-06 16:25:20 CHANGELOG.md: Update.
f436c302 2022-01-06 16:21:51 Fix buffer overflows and other errors found with fuzzying. (#168) Fix multiple buffer overflow on input found with fuzzying.
eeb32ecc 2022-01-06 16:16:45 Merge pull request #167 from dtldarek/master Two buffer overflow fixes.
b8c31a5b 2022-01-06 16:15:12 CHANGELOG.md: Add a note for the PR #167.
a8bb4d30 2022-01-06 16:01:55 md_is_table_underline: Remove requirement for minimal length of a cell underline. Fixes #169.
260cd339 2021-08-25 15:02:38 Fix buffer overflow on input found with fuzzying (in c-string format): "\n# h1\nc hh##e2ked\n\n A | rong__ ___strong \u0000\u0000\u0000\u0000\u0000\u0000\a\u0000\u0000\u0000\u0000\n# h1\nh# #2\n### h3\n#### h4\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\\\n##### h5\n#*#####\u0000\n6"
933388a6 2021-08-25 14:41:49 This is a fix for a buffer overflow that happens on input found with fuzzying (in c-string format): "\xA9##r[](r[](".
ab422e83 2021-07-15 19:12:49 md4c-html.h: Fix typo in a comment.
7f053306 2021-07-15 19:06:06 CHANGELOG.md: Update.
ea188729 2021-07-15 18:58:39 Emit '\n' after the XHTML root tag. Fixes #163.
ccc8b64a 2021-07-15 18:56:46 md_html: Add `~` to the list of characters not escaped in URIs. Fixes #165.
d5f8cc29 2021-06-27 18:48:05 Update README.md and CHANGELOG.md.
82b226ff 2021-06-27 18:42:09 md_is_html_block_start_condition: Accept lower-case HTML declaration. The change is mandated by the spec v. 0.30.
d50a0142 2021-06-27 18:31:02 md_is_html_block_start_condition: Update for 0.30. The spec. 0.30 adds the tag <textarea> into the list if HTML blocks start condition type 1.
c01aa6b3 2021-06-27 18:28:26 Update CommonMark spec file to v. 0.30
e8285942 2021-06-14 09:47:17 Fix MSVC compiler level 3 warnings (#162) Fix various C4244 warnings with the MSVC compiler for 64 bit
c3340b48 2021-05-11 12:33:15 Bump version to 0.4.8.
da77b928 2021-04-15 19:14:43 CHANGELOG.md: Fix typo.
0cebd6ff 2021-04-14 18:31:18 CHANGELOG.md: Update.
b2ee4b19 2021-04-14 18:27:19 md_resolve_links: Fix the test for the nested autolink covering whole link text. This fixes the fix for #152.
bcb55d0d 2021-04-14 09:18:09 md_resolve_links: Suppress bogus nested permissive autolink. Fixes #152.
4fc808d8 2021-03-29 12:51:48 md_analyze_line: Avoid reading 1 byte beyond the input size. Fixes #155.
aa654230 2021-03-22 14:00:35 md_enter_child_containers: Propagate list mark character properly. Fixes #153, #154.
3478ec69 2021-02-23 14:01:31 Added fuzzer for oss-fuzz integration. (#151)
269bbdb3 2021-02-11 21:39:44 Fix output with --full-html command line options. Fixes #150.
fe2f2427 2021-02-11 11:35:54 Fix copy&paster error in a comment.
fd7b5fe0 2021-02-05 21:40:47 md_analyze_line: Fix implicit ending of HTML blocks... ... when the HTML block is not explicitly ended (before the enclosing container block ends). Fixes #149.
2b6ebdfa 2021-01-09 11:54:27 Fix use of the cmake package (#146) Fix use of the cmake package Fix use of the cmake package and its imported targets. Make sure that the include dir comes with the cmake targets Put everything under md4cConfig so that the md4c-html can see md4c. Use md4c namespace so that the targets become md4c::md4c and md4c::md4c-html following cmake standards for imported targets. Fixes #145.
aa63198b 2020-12-24 15:04:35 Bump version to 0.4.7.
9ba57ccb 2020-12-14 19:53:58 md_link_label_cmp_load_fold_info: Remove a bogus code. The input into the function is already guaranted to not have a new line characters. (And handling of them in the function was broken anyway.)
da5821ae 2020-12-14 19:53:40 Fix testcase for issue #142.
5a44e327 2020-12-14 18:59:56 md_link_label_cmp: Fix the loop end condition. The old version likely could stop prematurely in a corner case when there was a Unicode character at the end of the either string, which maps into multiple fold info codepoints. Fixes #142.
d4a78622 2020-12-14 18:49:35 Minor cleanup.
701a0626 2020-12-14 18:45:54 Make MD_UNICODE_FOLD_INFO::n_codepoints unsigned.
a45f839b 2020-12-14 12:21:50 Fix mixed signed/unsigned comparisons Force both operands to unsigned. n_codepoints does not seem to ever contain negative offsets anyhow, should it actually be unsigned?
6dd64346 2020-12-14 01:40:40 Silence "unused parameter" warnings Merely added a suitable macro. Didn't refactor any code to actually figure out why the parameters were not used.
569defae 2020-12-14 01:25:26 Silence -Wimplicit-fallthrough warnings Use a macro that dispatches to the compiler-specific magic to silence implicit fallthrough warnings when the fallthrough was actually intended. The code already featured comments, so these are actually safe to place. (Unfortunately, Clang does not recognize any comment as "fall through" comment, and GCC only recognizes some variations of "fall through", not "pass through". Moreover, one of the comments replaced here had a typo...)
e1b41876 2020-12-14 01:24:56 Enable more warnings when building under GCC/Clang
26003b88 2020-12-04 20:42:22 md_is_container_mark: Recognize list item marks just before EOF. We were recognizing the list item marks when a new line or a blank character follows. However, given end-of-file means implicitly also an end-of-line, we should recognize in that situation too. Fixes #139.
3254b7cb 2020-11-13 12:02:39 md_process_table_block_contents: Suppress empty TBODY block generation. When the table has no body rows, do not call the callback with MD_BLOCK_TBODY events. Fixes #138.
a997cb21 2020-10-18 09:34:10 Add MD_BLOCK_TABLE_DETAIL. This allows renderers to have the info about table dimension (table column and row count) in advance and e.g. simplify their memory allocation strategy.
4585088a 2020-11-13 10:16:34 md_analyze_permissive_url_autolink: Better GFM compatibility. The autolinks now allow unmatched parenthesis, only the trailing parenthesis closers are handled specially to deal with the situation the autolink is all inside an outer parenthesis. Somehow our tests were broken and avoided the cases with unmatched parenthesis pairs inside the auto-link. That's now fixed and in sync with GFM specs too. Fixes #135.
c3a18d55 2020-11-13 09:27:10 md_collect_marks: continue -> break Does not cause any change in behavior: we just avoid needless loop iterations now.
baa1dd06 2020-11-09 16:02:06 Fix some English wording in comments.
23621a61 2020-11-05 18:40:46 added power support arch ppc64le on YML file. Added power support for the travis.yml file with ppc64le. This is part of the Ubuntu distribution for ppc64le.
125e8e03 2020-10-18 10:18:11 Initializes an uninitilized variable in md_analyze_emph Fixes the following, reported by clang analysis: src/md4c.c:3729:61: warning: variable 'opener_index' may be uninitialized when used here [-Wconditional-uninitialized] MD_MARKCHAIN* opener_chain = md_mark_chain(ctx, opener_index); ^~~~~~~~~~~~ src/md4c.c:3686:25: note: initialize the variable 'opener_index' to silence this warning int opener_index; ^ = 0
1a2f4816 2020-10-18 10:56:49 Adds missing field initializers (undefined behavior) src/md4c.c:5667:72: warning: missing field 'beg' initializer [-Wmissing-field-initializers] static const MD_LINE_ANALYSIS md_dummy_blank_line = { MD_LINE_BLANK, 0 };
1b2840cb 2020-10-18 09:41:37 adds /build dir to gitignore Documentation https://github.com/mity/md4c/wiki/Building-MD4C says to use build/ for cmake. I noticed that .gitignore contains a directory called build-aux -- perhaps the author were using that and either forgot to update the gitignore file or the documentation.
002f76c9 2020-10-18 09:37:45 md_resolve_links: Skip [...] used as a reference link/image label. Fixes #131.
601885f7 2020-09-30 11:44:48 Bump version to 0.4.6.
22ca89a3 2020-09-29 21:33:43 Fix ISANYOF encountering a zero byte in the input. When it happened, it could lead to unexpected results, including broken internal state of the parser. Fixes #130.
bcdbd126 2020-09-17 09:55:33 scripts/build_folding_map.py: Fix/improve a comment.
440ccd82 2020-08-19 10:03:31 Update md4c.h
9651f780 2020-08-16 11:28:21 Improve docs comments.
db7d1c92 2020-08-16 10:56:19 Bump version to 0.4.5.
67214417 2020-08-05 10:53:33 Make mark_chain[] helper macro definitions safer.
70d0ef7c 2020-08-05 09:18:41 Avoid simple {0} to initialize a more complex object. Should fix #125.
3980028a 2020-08-03 16:57:45 README.md: Some minor improvements.
c501c891 2020-07-30 10:13:05 Fix spelling of "than" in many occurances. I often spell it errorneously as "then". Doing this mistake way too often when typing fast.