From c1c2a1b5dd1d73e5e97b94e6626aaac25a3db9bc Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Fri, 28 Jul 2023 15:41:58 +0800 Subject: fix(inccommand): don't save information of a buffer twice (#24501) Problem: 'inccommand' doesn't restore 'undolevels' properly for a buffer shown in multiple windows. Solution: Don't save information of a buffer twice. --- test/functional/ui/inccommand_spec.lua | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'test') diff --git a/test/functional/ui/inccommand_spec.lua b/test/functional/ui/inccommand_spec.lua index dc4aeb9c83..00dfa3fd49 100644 --- a/test/functional/ui/inccommand_spec.lua +++ b/test/functional/ui/inccommand_spec.lua @@ -174,9 +174,12 @@ describe(":substitute, 'inccommand' preserves", function() it("'undolevels' (inccommand="..case..")", function() feed_command("set undolevels=139") feed_command("setlocal undolevels=34") + feed_command("split") -- Show the buffer in multiple windows feed_command("set inccommand=" .. case) insert("as") - feed(":%s/as/glork/") + feed(":%s/as/glork/") + poke_eventloop() + feed("") eq(meths.get_option_value('undolevels', {scope='global'}), 139) eq(meths.get_option_value('undolevels', {buf=0}), 34) end) -- cgit