forked from lug/matterbridge
Update dependencies/vendor (#1659)
This commit is contained in:
17
vendor/github.com/gomarkdown/markdown/parser/inline.go
generated
vendored
17
vendor/github.com/gomarkdown/markdown/parser/inline.go
generated
vendored
@@ -766,7 +766,22 @@ func entity(p *Parser, data []byte, offset int) (int, ast.Node) {
|
||||
// undo & escaping or it will be converted to & by another
|
||||
// escaper in the renderer
|
||||
if bytes.Equal(ent, []byte("&")) {
|
||||
ent = []byte{'&'}
|
||||
return end, newTextNode([]byte{'&'})
|
||||
}
|
||||
if len(ent) < 4 {
|
||||
return end, newTextNode(ent)
|
||||
}
|
||||
|
||||
// if ent consists solely out of numbers (hex or decimal) convert that unicode codepoint to actual rune
|
||||
codepoint := uint64(0)
|
||||
var err error
|
||||
if ent[2] == 'x' || ent[2] == 'X' { // hexadecimal
|
||||
codepoint, err = strconv.ParseUint(string(ent[3:len(ent)-1]), 16, 64)
|
||||
} else {
|
||||
codepoint, err = strconv.ParseUint(string(ent[2:len(ent)-1]), 10, 64)
|
||||
}
|
||||
if err == nil { // only if conversion was valid return here.
|
||||
return end, newTextNode([]byte(string(codepoint)))
|
||||
}
|
||||
|
||||
return end, newTextNode(ent)
|
||||
|
||||
Reference in New Issue
Block a user