@@ -632,16 +632,18 @@ func shortLinkProcessorFull(ctx *postProcessCtx, node *html.Node, noLink bool) {
632
632
// When parsing HTML, x/net/html will change all quotes which are
633
633
// not used for syntax into UTF-8 quotes. So checking val[0] won't
634
634
// be enough, since that only checks a single byte.
635
- if (strings .HasPrefix (val , "“" ) && strings .HasSuffix (val , "”" )) ||
636
- (strings .HasPrefix (val , "‘" ) && strings .HasSuffix (val , "’" )) {
637
- const lenQuote = len ("‘" )
638
- val = val [lenQuote : len (val )- lenQuote ]
639
- } else if (strings .HasPrefix (val , "\" " ) && strings .HasSuffix (val , "\" " )) ||
640
- (strings .HasPrefix (val , "'" ) && strings .HasSuffix (val , "'" )) {
641
- val = val [1 : len (val )- 1 ]
642
- } else if strings .HasPrefix (val , "'" ) && strings .HasSuffix (val , "’" ) {
643
- const lenQuote = len ("‘" )
644
- val = val [1 : len (val )- lenQuote ]
635
+ if len (val ) > 1 {
636
+ if (strings .HasPrefix (val , "“" ) && strings .HasSuffix (val , "”" )) ||
637
+ (strings .HasPrefix (val , "‘" ) && strings .HasSuffix (val , "’" )) {
638
+ const lenQuote = len ("‘" )
639
+ val = val [lenQuote : len (val )- lenQuote ]
640
+ } else if (strings .HasPrefix (val , "\" " ) && strings .HasSuffix (val , "\" " )) ||
641
+ (strings .HasPrefix (val , "'" ) && strings .HasSuffix (val , "'" )) {
642
+ val = val [1 : len (val )- 1 ]
643
+ } else if strings .HasPrefix (val , "'" ) && strings .HasSuffix (val , "’" ) {
644
+ const lenQuote = len ("‘" )
645
+ val = val [1 : len (val )- lenQuote ]
646
+ }
645
647
}
646
648
props [key ] = val
647
649
}
0 commit comments