cmark

My personal build of CMark ✏️

Commit
a407869dfc062d6ec24f00482aae6019e083d8c7
Parent
2f718ac9a7e314ae1e195e040664b7478e93416d
Author
John MacFarlane <jgm@berkeley.edu>
Date

Fixed rewind on parseLabel.

14 test failures now, all with emphasis. IN most of all of these cases, the examples in the spec seem to be mistakes, given what the spec says.

More troubling, performance is down from around 220 to 83. This needs investigation.

Diffstat

1 file changed, 3 insertions, 2 deletions

Status File Name N° Changes Insertions Deletions
Modified js/stmd.js 5 3 2
diff --git a/js/stmd.js b/js/stmd.js
@@ -456,7 +456,7 @@ var parseLink = function() {
 
   n = this.parseLinkLabel();
   if (n === 0) {
-    return 0;
+    return null;
   }
   var afterlabel = this.pos;
   var rawlabel = this.subject.substr(startpos, n);
@@ -479,7 +479,7 @@ var parseLink = function() {
                  label: parseRawLabel(rawlabel) };
      } else {
         this.pos = startpos;
-        return 0;
+        return null;
      }
   }
   // If we're here, it wasn't an explicit link. Try to parse a reference link.
@@ -505,6 +505,7 @@ var parseLink = function() {
             title: link.title,
             label: parseRawLabel(rawlabel) };
   } else {
+      this.pos = startpos;
       return null;
   }
   // Nothing worked, rewind: