aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRandy Palamar <palamar@ualberta.ca>2023-10-23 17:54:53 -0600
committerRandy Palamar <palamar@ualberta.ca>2023-10-23 17:54:53 -0600
commit18c72a152a196920bfd8804b35ac8b278c373437 (patch)
treed3f8a8b2f6f052affe86cab5dff01dc6dc0b0277
parent045ef7a102e86f85ea71864c6a12ecb90250f935 (diff)
downloadvis-18c72a152a196920bfd8804b35ac8b278c373437.tar.gz
vis-18c72a152a196920bfd8804b35ac8b278c373437.tar.xz
sam: reject invalid ranges for cmd_extract ("x"/"y")
fixes #1152: `:2x/foo/<cr>` in a file with only one line makes vis get stuck in an infinite loop
-rw-r--r--sam.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sam.c b/sam.c
index 9902a66..686fa1e 100644
--- a/sam.c
+++ b/sam.c
@@ -1497,7 +1497,7 @@ static int extract(Vis *vis, Win *win, Command *cmd, const char *argv[], Selecti
}
static bool cmd_extract(Vis *vis, Win *win, Command *cmd, const char *argv[], Selection *sel, Filerange *range) {
- if (!win)
+ if (!win || !text_range_valid(range))
return false;
int matches = 0;
if (count_negative(cmd->cmd))