diff options
| author | Marc André Tanner <mat@brain-dump.org> | 2017-04-04 07:34:41 +0200 |
|---|---|---|
| committer | Marc André Tanner <mat@brain-dump.org> | 2017-04-04 07:36:33 +0200 |
| commit | 2cfaf219558dd730478e4c5e27376091b617a50f (patch) | |
| tree | b7c1f81ee50c7c2fc49ee3a6480ac2acafbd1b5d | |
| parent | 9ceac7ea426bf4aceb6aa260d10b83e3c7fe16d3 (diff) | |
| download | vis-2cfaf219558dd730478e4c5e27376091b617a50f.tar.gz vis-2cfaf219558dd730478e4c5e27376091b617a50f.tar.xz | |
vis: reject multi letter mark and register names
Fix #531
| -rw-r--r-- | main.c | 10 |
1 files changed, 10 insertions, 0 deletions
@@ -1207,6 +1207,8 @@ static const char *macro_record(Vis *vis, const char *keys, const Arg *arg) { static const char *macro_replay(Vis *vis, const char *keys, const Arg *arg) { if (!keys[0]) return NULL; + if (keys[1]) + return vis_keys_next(vis, keys); enum VisRegister reg = vis_register_from(vis, keys[0]); vis_macro_replay(vis, reg); return keys+1; @@ -1679,6 +1681,8 @@ static const char *selection_restore(Vis *vis, const char *keys, const Arg *arg) static const char *reg(Vis *vis, const char *keys, const Arg *arg) { if (!keys[0]) return NULL; + if (keys[1]) + return vis_keys_next(vis, keys); enum VisRegister reg = vis_register_from(vis, keys[0]); vis_register_set(vis, reg); return keys+1; @@ -1687,6 +1691,8 @@ static const char *reg(Vis *vis, const char *keys, const Arg *arg) { static const char *mark_set(Vis *vis, const char *keys, const Arg *arg) { if (!keys[0]) return NULL; + if (keys[1]) + return vis_keys_next(vis, keys); vis_mark_set(vis, vis_mark_from(vis, keys[0]), view_cursor_get(vis_view(vis))); return keys+1; } @@ -1694,6 +1700,8 @@ static const char *mark_set(Vis *vis, const char *keys, const Arg *arg) { static const char *mark_motion(Vis *vis, const char *keys, const Arg *arg) { if (!keys[0]) return NULL; + if (keys[1]) + return vis_keys_next(vis, keys); vis_motion(vis, arg->i, vis_mark_from(vis, keys[0])); return keys+1; } @@ -1751,6 +1759,8 @@ static const char *delete(Vis *vis, const char *keys, const Arg *arg) { static const char *insert_register(Vis *vis, const char *keys, const Arg *arg) { if (!keys[0]) return NULL; + if (keys[1]) + return vis_keys_next(vis, keys); enum VisRegister reg = vis_register_from(vis, keys[0]); size_t len; const char *data = vis_register_get(vis, reg, &len); |
