aboutsummaryrefslogtreecommitdiff
path: root/runtime/autoload/msgpack.vim
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/autoload/msgpack.vim')
-rw-r--r--runtime/autoload/msgpack.vim11
1 files changed, 4 insertions, 7 deletions
diff --git a/runtime/autoload/msgpack.vim b/runtime/autoload/msgpack.vim
index 09c99c940d..7dd225e3d9 100644
--- a/runtime/autoload/msgpack.vim
+++ b/runtime/autoload/msgpack.vim
@@ -605,13 +605,10 @@ function msgpack#eval(s, special_objs) abort
call add(expr, dec)
endif
endif
- elseif s =~# '-\?\%(inf\|nan\)'
- if s[0] is# '-'
- call add(expr, '-')
- let s = s[1:]
- endif
- call add(expr, s:MSGPACK_SPECIAL_OBJECTS[s[0:2]])
- let s = s[3:]
+ elseif s =~# '\v^\-%(inf|nan)'
+ call add(expr, '-')
+ call add(expr, s:MSGPACK_SPECIAL_OBJECTS[s[1:3]])
+ let s = s[4:]
elseif stridx('="+', s[0]) != -1
let match = matchlist(s, '\v\C^(\=|\+\((\-?\d+)\)|)(\"%(\\.|[^\\"]+)*\")')
if empty(match)