cmark

My personal build of CMark ✏️

Commit
a2a6b7dd829bd7097aa52f5af7fbd66dd7e2c667
Parent
e9f5a586938b926da932a9e957f801281dde4730
Author
John MacFarlane <jgm@berkeley.edu>
Date

Fixed bug in parsing `* **a** b*` etc.

Diffstat

1 file changed, 8 insertions, 6 deletions

Status File Name N° Changes Insertions Deletions
Modified js/stmd.js 14 8 6
diff --git a/js/stmd.js b/js/stmd.js
@@ -428,9 +428,10 @@
                                  second)}];
                 } else if (res.numdelims === 1 && res.can_close) {
                     this.pos += 1;
-                    return [{t: 'Str', c: c+c}].concat(
-                        first,
-                        [{t: 'Emph', c: second}]);
+                    first = first.concat([{t: 'Emph', c: second}]);
+                    current = first;
+                    state = 2;
+                    continue;
                 }
                 break;
             case 9: // *a **b
@@ -441,9 +442,10 @@
                                                c: second}])}];
                 } else if (res.numdelims === 2 && res.can_close) {
                     this.pos += 2;
-                    return [{t: 'Str', c: c}].concat(
-                        first,
-                        [{t: 'Strong', c: second}]);
+                    first = first.concat([{t: 'Strong', c: second}]);
+                    current = first;
+                    state = 3;
+                    continue;
                 } else if (res.numdelims === 1 && res.can_close) {
                     this.pos += 1;
                     return [{t: 'Emph',