diff src/indent.c @ 18619:788d76db02ac v8.1.2302

patch 8.1.2302: :lockmarks does not work for '[ and '] Commit: https://github.com/vim/vim/commit/f4a1d1c0542df151bc59ac3b798ed198b5c71ccc Author: Bram Moolenaar <Bram@vim.org> Date: Sat Nov 16 13:50:25 2019 +0100 patch 8.1.2302: :lockmarks does not work for '[ and '] Problem: :lockmarks does not work for '[ and ']. Solution: save and restore '[ and '] marks. (James McCoy, closes https://github.com/vim/vim/issues/5222)
author Bram Moolenaar <Bram@vim.org>
date Sat, 16 Nov 2019 14:00:05 +0100
parents e9e60e0088b5
children fd95d4dbeb37
line wrap: on
line diff
--- a/src/indent.c
+++ b/src/indent.c
@@ -1001,9 +1001,12 @@ op_reindent(oparg_T *oap, int (*how)(voi
 	smsg(NGETTEXT("%ld line indented ",
 						 "%ld lines indented ", i), i);
     }
-    // set '[ and '] marks
-    curbuf->b_op_start = oap->start;
-    curbuf->b_op_end = oap->end;
+    if (!cmdmod.lockmarks)
+    {
+	// set '[ and '] marks
+	curbuf->b_op_start = oap->start;
+	curbuf->b_op_end = oap->end;
+    }
 }
 #endif // defined(FEAT_LISP) || defined(FEAT_CINDENT)