ericcornelissen/wordrow

MarkDown parser runtime error due to improperly formatted markdown

Closed this issue · 0 comments

The fuzzing introduced in #51 has uncovered a bug in the MarkDown parser. Given the input:

|

You will get the following error:

panic: runtime error: index out of range [1] with length 1

goroutine 1 [running]:
github.com/ericcornelissen/wordrow/internal/wordmaps.parseTableHeader(0xc000010330, 0x1, 0x1, 0x4e2525, 0x5db2fc)
	/media/win/workspace/wordrow/internal/wordmaps/markdown.go:40 +0x43c
github.com/ericcornelissen/wordrow/internal/wordmaps.parseTable(0xc000010330, 0x1, 0x1, 0xc000059dd0, 0x0, 0x0, 0xc000010330)
	/media/win/workspace/wordrow/internal/wordmaps/markdown.go:61 +0x5b
github.com/ericcornelissen/wordrow/internal/wordmaps.parseMarkDownFile(0xc000059e58, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4674c6, 0x5eca9d99)
	/media/win/workspace/wordrow/internal/wordmaps/markdown.go:93 +0x1eb
github.com/ericcornelissen/wordrow/internal/wordmaps.FuzzMarkDown(0x7f74acc01000, 0x1, 0x1, 0x3)
	/media/win/workspace/wordrow/internal/wordmaps/markdown_fuzz.go:6 +0x86
go-fuzz-dep.Main(0xc000059f40, 0x2, 0x2)
	go-fuzz-dep/main.go:36 +0x1ad
main.main()
	github.com/ericcornelissen/wordrow/internal/wordmaps/go.fuzz.main/main.go:17 +0x5d
exit status 2