Log

Author Commit Date CI Message
Martin Mitas 23312d6d 2016-12-05T11:13:43 md_is_html_tag: Fix parsing unquoted attribute value (issue #2).
Martin Mitas c5fa9a70 2016-12-01T22:16:50 md_analyze_line: Closing code fence cannot have list loosening effect.
Martin Mitas 17e6b940 2016-12-04T20:53:47 md_resolve_links: Minor cleanup.
Martin Mitas 035dea49 2016-12-04T20:48:06 Fix crash caused by bad management of opener chains. 1. We need to reset (potentially used) chains after each mark analysis phase. This ensures that md_rollback() does not try to play with chains used in previous phases. 2. md_rollback() must never play with PTR_CHAIN.
Martin Mitas 578dea5b 2016-12-04T18:41:41 md_resolve_links: Remove possible invalid initialization.
Martin Mitas bb23f791 2016-12-04T18:09:33 md_build_img_alt: Fix crash when dealing with some mark types. For some mark types, it is possible that subsequent mark has lower 'beg' then 'end' of the previous one. This typically happens when an opener mark is expanded to cover whole range to the closer.
Martin Mitas b40d5950 2016-12-04T17:01:00 Fix file permissions of python scripts.
Martin Mitas 4e416f1b 2016-12-01T22:09:38 md_analyze_line: Fix blank lines inside a fenced code block when nested in a container.
Martin Mitas 12b16001 2016-12-01T21:48:42 md_analyze_line: Blank line inside a blockquote cannot have a list loosening effect.
Martin Mitas 3f95f065 2016-12-01T21:40:50 md_process_all_blocks: Fix decrementing of ctx->n_containers when leaving blockquote.
Martin Mitas b0ac9ef4 2016-12-01T18:18:10 md_analyze_line: Ordered list can interrupt paragraph only if start index is 1.
Martin Mitas c7083d88 2016-12-01T18:07:35 md_process_all_blocks: Block quote cannot be "tight". Block quote cannot "inherit" tightness of a (tight) enclosing list item.
Martin Mitas 203ed892 2016-12-01T17:41:51 md_analyze_line: Update MD_CONTAINER when switching to the brother list item.
Martin Mitas 52dea362 2016-12-01T16:52:24 Handle empty list items.
Martin Mitas 93701fdb 2016-12-01T11:51:57 md_process_inlines: Handle line breaks inside (inline) raw HTML.
Martin Mitas 25f0f137 2016-12-01T11:32:04 md_analyze_line: Use ctx->code_indent_offset rather then encoded 4.
Martin Mitas e7908d56 2016-12-01T11:29:42 md_analyze_line: Handle better indentation after list item mark.
Martin Mitas 325f373e 2016-11-30T23:41:34 md4c.h: Update docs comments.
Martin Mitas 13ce09b7 2016-11-27T03:03:16 README.md: Update.
Martin Mitas b43ef8e6 2016-11-27T00:50:24 md_link_label_eq: Treat new line as an unicode whitespace. It fixes this: [Foo bar]: /url [Baz][Foo bar]
Martin Mitas e61a8158 2016-11-27T00:39:54 Fix some by-one errors when handling escapes.
Martin Mitas dee8142c 2016-11-27T00:37:22 Handle escapes in link destinations.
Martin Mitas 55afb5ba 2016-11-27T00:09:50 Fix typo.
Martin Mitas ebaee39c 2016-11-26T23:37:05 Fix nesting of links and images.
Martin Mitas d82bf9e0 2016-11-26T23:13:35 md_is_container_mark: If indented as an indented code block, we cannot be a container start. This fixes this: > foo - bar
Martin Mitas 4bb7cf8a 2016-11-26T23:02:44 Fix handling a backslash inside an autolink. This fixes this: <http://example.com/\[\>
Martin Mitas 159c2ee3 2016-11-26T22:48:19 Fix counting line indentation if '\t' is present.
Martin Mitas f1bd8b37 2016-11-26T21:57:24 Fix handling of multi-backtick codespan mark if a backslash precedes. So in this \``code span` the codespan is now correctly recognized.
Martin Mitas 2a70b3ef 2016-11-26T20:32:33 Limit length of code span marks to lower then 256 characters. This protects against a pathologic case generated by $ python -c 'print( "".join(map(lambda x: ("e" + "`" * x), range(1,10000))))'
Martin Mitas 4c96ac26 2016-11-26T20:31:35 Refactorize memory management of MD_LINK_REF_DEF structures.
Martin Mitas aacbbfae 2016-11-26T14:08:27 Minor clean-up.
Martin Mitas 96a92808 2016-11-26T14:00:40 CMakeLists.txt: By default, do Release build.
Martin Mitas 09c7fd7f 2016-11-25T15:17:01 md_text_with_null_replacement: Fix endless loop on a NULL character.
Martin Mitas 6fb7439c 2016-11-25T00:02:46 md_remove_line_breaks: Minor fixes.
Martin Mitas 3eba7f42 2016-11-24T23:50:06 md_analyze_line: End raw HTML block prematurely if enclosing container ends.
Martin Mitas 1d8a4e72 2016-11-24T16:09:44 README.md: Minor update.
Martin Mitas b712bc56 2016-11-24T15:44:58 README.md: Update.
Martin Mitas 8a540274 2016-11-24T15:40:01 README.md: Add section about encoding.
Martin Mitas a930e46f 2016-11-24T15:04:47 Fix build with MSVC.
Martin Mitas 6a1268a7 2016-11-24T14:34:12 README.md: Update.
Martin Mitas 54028ed7 2016-11-24T14:16:47 Implement ordered lists.
Martin Mitas ce319c19 2016-11-24T13:16:22 README.md: Fix some wording.
Martin Mitas 94556881 2016-11-24T13:12:27 Fix some corner cases with blank lines.
Martin Mitas 61f9e2cb 2016-11-24T11:59:59 Implement block quotes.
Martin Mitas b86c7f28 2016-11-24T11:31:28 Implement unordered lists.
Martin Mitas 0887820d 2016-11-23T13:37:16 Remove parsing of block quotes. It is implemented in a wrong way and cannot be reasonaly extended to support other container blocks like lists.
Martin Mitas 2d2086aa 2016-11-23T11:20:25 md_is_table_underline: Check there is at least one pipe on the line.
Martin Mitas 4468c7aa 2016-11-22T03:16:30 md_setup_fenced_code_detail: Make sure we don't iterate beyond document end. (CID 982106)
Martin Mitas 738fb3b8 2016-11-21T15:42:34 Fix parsing link reference definitions with line breaks.
Martin Mitas 16fbd061 2016-11-21T15:15:41 md_is_inline_link_spec: Fix setting of *p_end.
Martin Mitas be7fcc16 2016-11-21T09:47:31 Implement tables. Note it is implemented as an extension. To enable it, the flag MD_FLAG_TABLES must be explicitly specified.
Martin Mitas 77d5eee7 2016-11-21T10:33:52 md_is_setext_underline: On succeess, update p_end to save caller some work.
Martin Mitas 9f1c4b58 2016-11-21T09:48:08 Fix macro MD_FLAG_PERMISSIVEAUTOLINKS.
Martin Mitas b00392c1 2016-11-21T02:48:29 Fix gcc warning in Release build.
Martin Mitas 7d7d3b40 2016-11-21T02:41:39 md2html: Implement URL escaping.
Martin Mitas 20434c8a 2016-11-21T02:08:34 Implement images.
Martin Mitas 2e96328e 2016-11-21T00:27:03 Use first matching link reference definition.
Martin Mitas 5b5c8e7b 2016-11-21T00:17:25 md_analyze_simple_pairing_mark: Fix handling of the "rule of three".
Martin Mitas 342343b6 2016-11-21T00:08:33 Fix prcessing of link contents.
Martin Mitas d4c01063 2016-11-20T23:02:39 Update README.md.
Martin Mitas 6959baec 2016-11-20T22:56:08 Implement inline links.
Martin Mitas 082a4c01 2016-11-20T02:17:01 Fix gcc warnings when building Release build.
Martin Mitas 08cc1df9 2016-11-20T01:44:50 When dealing with nested links, only the inner one is recognized as one.
Martin Mitas 809e611b 2016-11-20T00:57:32 Migrate to CommonMark pecification 0.27.
Martin Mitas d5a8c699 2016-11-20T00:48:36 md_consume_link_reference_definitions: Fix when link references do not compose whole block.
Martin Mitas 36643f4a 2016-11-20T00:16:16 md2html: Fix name of link attribute 'title'.
Martin Mitas 789a5b71 2016-11-20T00:10:41 Fix detection of link label with escapes and new lines.
Martin Mitas 1a247795 2016-11-10T13:22:29 Implement link reference definitions and, partially, link references.
Martin Mitas ef38ecbc 2016-11-19T14:59:58 Refactor to enhance readability of the code. Functions start with md_is_xxx() return TRUE (1) or FALSE (0) instead of 0 and -1. -1 is now reserved for real errors.
Martin Mitas 8f672646 2016-11-19T13:38:06 Better Unicode support.
Martin Mitas 15a3a81f 2016-11-11T16:56:00 Implement e-mail autolinks.
Martin Mitas 0d4b1066 2016-11-07T19:46:43 Refactorize to allow procesing more blocks at once.
Martin Mitas 1ba03589 2016-11-07T20:50:11 md_collect_marks: Optimize the function. Use character map for a fast path and minimize count of branches for specially handled characters. When profiling md2html on a larger documents with output redirected to /dev/null to mitigate I/O, this function was quite a bottleneck. It consummed about 33% of CPU cycles on a longer document input, with this patch applied it drops down to 12%.
Martin Mitas 7c9f5982 2016-11-07T19:48:16 Fix typo in debug output.
Martin Mitas 0ed69376 2016-11-07T17:47:21 md_analyze_lt_gt: Fix assertion condition. The variable detected_end is valid only for 'is_raw_html' case.
Martin Mitas 7ada257f 2016-11-07T17:46:39 For Debug build, #define macro DEBUG.
Martin Mitas 302660b8 2016-10-22T23:36:15 Get rid of unneeded variables.
Martin Mitas e5225137 2016-10-24T10:58:23 scripts/coverity.sh: chmod 755
Martin Mitas af037913 2016-10-14T23:29:48 md_is_html_declaration: Fix possible access beyond document buffer.
Martin Mitas 545b0016 2016-10-14T19:59:42 README.md: Minor update.
Martin Mitas ef5f230f 2016-10-14T19:56:05 Implement permissive autolinks extensions. With MD_FLAG_PERMISSIVEURLAUTOLINKS, we treat not overly complicated URLs as autolinks even without '<' and '>'. With MD_FLAG_PERMISSIVEEMAILAUTOLINKS, we treat not overly complicated e-mail addresses as autolinks even without '<', '>' and without the 'mailto:' scheme. Also expanded md2html utility and tests to cover these.
Martin Mitas 63a31411 2016-10-14T16:10:40 Minor comment cleanup.
Martin Mitas b2a30903 2016-10-14T11:03:20 md_process_doc: Fix use after free (via realloc()). pivot_line points into the lines[], so we must be sure we have a valid pointer after the realloc() when growing the array.
Martin Mitas 9013247e 2016-10-14T03:03:17 md_rollback: Optimize. We skip over as many marks a possible in mot cases. This fixes e.g. the pathological case generated by command $ python -c 'print (("*a **a " * 65000) + "b" + (" a** a*" * 65000))'
Martin Mitas 2ce9548d 2016-10-13T23:10:21 Minor cleanup.
Martin Mitas 3d708ab2 2016-10-13T23:06:15 Simplify logging. No <stdargs.h> needed.
Martin Mitas 684c80ce 2016-10-13T22:38:16 Implement "rule of three". Since 0.26, CommonMark specifies intraword '*' or '_' marks cannot close if sume of opening and closing mark chracters can be divided by three.
Martin Mitas 296c8318 2016-10-13T19:04:36 Implement emphasis and strong emphasis.
Martin Mitas ec6a1cb7 2016-10-13T19:31:05 md_is_html_block_end_condition: Improve the function so we do just a single scan of lines inside the HTML block.
Martin Mitas 977ca3e1 2016-10-13T18:29:13 md_collect_marks: Make a branch to be more friendly ... to CPU branch prediction. This seems to have 20%-effect when bechmarking with md2html (and output redirected to /dev/null) on my machine.
Martin Mitas bb66cf83 2016-10-13T18:28:13 Fix character classification checks to deal with signed as well usnigned char.
Martin Mitas d6f40880 2016-10-11T13:22:44 Fix branching on initialized variable. (Caught with Valgrind.)
Martin Mitas 9af285a6 2016-10-11T12:02:08 Fix transforming a new line into space inside of a code span.
Martin Mitas 55f39e2a 2016-10-11T11:13:16 Fix #definition of MD_ASSERT and MD_UNREACHABLE for non-debug gcc builds.
Martin Mitas a7899c05 2016-10-11T02:34:01 Implement autolinks.
Martin Mitas fec7b9e6 2016-10-11T02:43:40 md_is_html_tag: The tag name cannot contain ':', '.' or '_'.
Martin Mitas c3e63408 2016-10-11T01:19:50 scripts/run-tests.sh: Fix permissions.
Martin Mitas 8fd97d78 2016-10-11T01:11:21 scripts/run-tests.sh: Fix typo.
Martin Mitas 1cfc6a5f 2016-10-11T01:10:11 Incorporate the specification testsuite from CommonMark.
Martin Mitas f6456e35 2016-10-11T00:38:41 Minor clean up of README.md.