lib/kramdown/parser/kramdown/header.rb in kramdown-0.14.1 vs lib/kramdown/parser/kramdown/header.rb in kramdown-0.14.2
- old
+ new
@@ -50,12 +50,14 @@
# Parse the Atx header at the current location.
def parse_atx_header
return false if !after_block_boundary?
- @src.scan(ATX_HEADER_MATCH)
- level, text, id = @src[1], @src[2], @src[3]
- text.strip!
+ @src.check(ATX_HEADER_MATCH)
+ level, text, id = @src[1], @src[2].to_s.strip, @src[3]
+ return false if text.empty?
+
+ @src.pos += @src.matched_size
el = new_block_el(:header, nil, nil, :level => level.length, :raw_text => text)
add_text(text, el)
el.attr['id'] = id if id
@tree.children << el
true