From 34f980b539efdf4686e7b78e713c5c2dfcd428b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20Andr=C3=A9=20Tanner?= Date: Wed, 8 Feb 2017 15:56:12 +0100 Subject: sam: execute commands even if we have no valid range In an ideal world this should never happen. However, if for some reason all cursors/selections become invalid, default to an empty range. This at least allows to terminate the editor gracefully whereas before the command would silently be ignored. --- sam.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sam.c b/sam.c index 7a762f3..e123b56 100644 --- a/sam.c +++ b/sam.c @@ -1392,8 +1392,9 @@ static bool cmd_select(Vis *vis, Win *win, Command *cmd, const char *argv[], Cur } else { sel = text_range_new(pos, text_char_next(txt, pos)); } - if (text_range_valid(&sel)) - ret &= sam_execute(vis, win, cmd->cmd, c, &sel); + if (!text_range_valid(&sel)) + sel = text_range_new(0, 0); + ret &= sam_execute(vis, win, cmd->cmd, c, &sel); if (cmd->cmd->cmddef->flags & CMD_ONCE) break; } -- cgit v1.2.3