about summary refs log tree commit diff stats
path: root/adapter/format
diff options
context:
space:
mode:
authorbptato <nincsnevem662@gmail.com>2024-10-28 19:50:08 +0100
committerbptato <nincsnevem662@gmail.com>2024-10-28 19:50:08 +0100
commitbd4386923056c53e97f0865d846ef52d0666ca56 (patch)
treebb38031817be84504434c71dd8841944b7c10696 /adapter/format
parent95e392b650643ba0638e49999f4cd6b7d9d3a23d (diff)
downloadchawan-bd4386923056c53e97f0865d846ef52d0666ca56.tar.gz
md2html: fix index defect on EOF
Diffstat (limited to 'adapter/format')
-rw-r--r--adapter/format/md2html.nim8
1 files changed, 6 insertions, 2 deletions
diff --git a/adapter/format/md2html.nim b/adapter/format/md2html.nim
index 48296e54..efa66dfa 100644
--- a/adapter/format/md2html.nim
+++ b/adapter/format/md2html.nim
@@ -166,13 +166,17 @@ proc parseTitle(title: var string; line: openArray[char]; i: int): int =
   return line.skipBlanks(i)
 
 proc parseLink(ctx: var ParseInlineContext; line: openArray[char]) =
-  let i = ctx.i + 1
+  var i = ctx.i + 1
   if i >= line.len or line[i] != '(':
     #TODO reference links
     stdout.write('[' & ctx.bracketChars & ']')
     return
+  i = line.skipBlanks(i + 1)
+  if i >= line.len:
+    stdout.write('[' & ctx.bracketChars & ']')
+    return
   var url = ""
-  var j = url.parseLinkDestination(line, line.skipBlanks(i + 1))
+  var j = url.parseLinkDestination(line, i)
   var title = ""
   if j != -1 and j < line.len and line[j] in {'(', '"', '\''}:
     j = title.parseTitle(line, j)