diff --git a/Libraries/LibMarkdown/Heading.cpp b/Libraries/LibMarkdown/Heading.cpp index e0374c97c9..8bee287bfe 100644 --- a/Libraries/LibMarkdown/Heading.cpp +++ b/Libraries/LibMarkdown/Heading.cpp @@ -67,11 +67,12 @@ OwnPtr Heading::parse(Vector::ConstIterator& lines) const StringView& line = *lines; size_t level; - for (level = 0; level < line.length(); level++) + for (level = 0; level < line.length(); level++) { if (line[level] != '#') break; + } - if (level >= line.length() || line[level] != ' ') + if (!level || level >= line.length() || line[level] != ' ') return nullptr; StringView title_view = line.substring_view(level + 1, line.length() - level - 1); diff --git a/Libraries/LibMarkdown/Heading.h b/Libraries/LibMarkdown/Heading.h index f68ebd2cd3..5628f68679 100644 --- a/Libraries/LibMarkdown/Heading.h +++ b/Libraries/LibMarkdown/Heading.h @@ -40,6 +40,7 @@ public: : m_text(move(text)) , m_level(level) { + ASSERT(m_level > 0); } virtual ~Heading() override { }