File tree Expand file tree Collapse file tree 1 file changed +9
-4
lines changed Expand file tree Collapse file tree 1 file changed +9
-4
lines changed Original file line number Diff line number Diff line change @@ -2583,7 +2583,7 @@ function! s:ExprTokenizer.get2()
25832583 let s .= r .read_bdigit ()
25842584 return self .token (s: TOKEN_NUMBER , s , pos)
25852585 elseif c == # ' 0' && (r .p (1 ) == # ' Z' || r .p (1 ) == # ' z' ) && r .p (2 ) !=# ' .'
2586- let s = r .getn (3 )
2586+ let s = r .getn (2 )
25872587 let s .= r .read_blob ()
25882588 return self .token (s: TOKEN_BLOB , s , pos)
25892589 elseif s: isdigit (c )
@@ -3954,11 +3954,16 @@ endfunction
39543954function ! s: StringReader .read_blob ()
39553955 let r = ' '
39563956 while 1
3957- let c = self .peekn (1 )
3958- if ! s: isxdigit ( c ) && c != ' . '
3957+ let s = self .peekn (2 )
3958+ if s == ' '
39593959 break
3960+ elseif s = ~# ' ^[0-9A-Fa-f][0-9A-Fa-f]$'
3961+ let r .= self .getn (2 )
3962+ elseif s = ~# ' ^\.[0-9A-Fa-f]$'
3963+ let r .= self .getn (1 )
3964+ else
3965+ throw s: Err (' E973: Blob literal should have an even number of hex characters:' . s , self .getpos ())
39603966 endif
3961- let r .= self .getn (1 )
39623967 endwhile
39633968 return r
39643969endfunction
You can’t perform that action at this time.
0 commit comments