summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohannes Altmanninger <aclopte@gmail.com>2023-11-11 12:32:18 +0100
committerJohannes Altmanninger <aclopte@gmail.com>2023-11-11 14:37:32 +0100
commitc597a056d09daa67f028ffd04cab5041f5e56dcb (patch)
treeefe3db458efb1f38a73913a595b3b0d4a4f024ec
parent6babba9bfa65de2486b76afb2eced59c79ee8581 (diff)
Fix spurious incremental search when incsearch=false
Regressed in a2c41593a (Fix partial regex text being pushed in history, 2023-11-02).
-rw-r--r--src/normal.cc4
-rw-r--r--test/regression/0-no-incsearch/cmd1
-rw-r--r--test/regression/0-no-incsearch/in3
-rw-r--r--test/regression/0-no-incsearch/kak_selection1
-rw-r--r--test/regression/0-no-incsearch/rc1
-rw-r--r--test/regression/0-no-incsearch/script6
6 files changed, 15 insertions, 1 deletions
diff --git a/src/normal.cc b/src/normal.cc
index 69fc9285..ebe86ebc 100644
--- a/src/normal.cc
+++ b/src/normal.cc
@@ -860,7 +860,9 @@ void regex_prompt(Context& context, String prompt, char reg, T func)
{
case PromptEvent::Abort: return;
case PromptEvent::Change:
- if (incsearch and not str.empty())
+ if (not incsearch)
+ return;
+ if (not str.empty())
RegisterManager::instance()[reg].set(context, str.str());
break;
case PromptEvent::Validate:
diff --git a/test/regression/0-no-incsearch/cmd b/test/regression/0-no-incsearch/cmd
new file mode 100644
index 00000000..8b137891
--- /dev/null
+++ b/test/regression/0-no-incsearch/cmd
@@ -0,0 +1 @@
+
diff --git a/test/regression/0-no-incsearch/in b/test/regression/0-no-incsearch/in
new file mode 100644
index 00000000..dd8fd25d
--- /dev/null
+++ b/test/regression/0-no-incsearch/in
@@ -0,0 +1,3 @@
+
+x1
+x2
diff --git a/test/regression/0-no-incsearch/kak_selection b/test/regression/0-no-incsearch/kak_selection
new file mode 100644
index 00000000..9e35a1c8
--- /dev/null
+++ b/test/regression/0-no-incsearch/kak_selection
@@ -0,0 +1 @@
+x1
diff --git a/test/regression/0-no-incsearch/rc b/test/regression/0-no-incsearch/rc
new file mode 100644
index 00000000..a8e8b092
--- /dev/null
+++ b/test/regression/0-no-incsearch/rc
@@ -0,0 +1 @@
+set-option global incsearch false
diff --git a/test/regression/0-no-incsearch/script b/test/regression/0-no-incsearch/script
new file mode 100644
index 00000000..2d5ea5a1
--- /dev/null
+++ b/test/regression/0-no-incsearch/script
@@ -0,0 +1,6 @@
+ui_out -ignore 4
+ui_in '{ "jsonrpc": "2.0", "method": "keys", "params": [ "/x" ] }'
+sleep 0.1
+ui_in '{ "jsonrpc": "2.0", "method": "keys", "params": [ ".<ret>" ] }'
+sleep 0.1
+ui_out -ignore 1