summaryrefslogtreecommitdiffstats
path: root/src/ex_cmds.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2023-05-20 14:07:00 +0100
committerBram Moolenaar <Bram@vim.org>2023-05-20 14:07:00 +0100
commit79cdf026f1b8a16298ee73be497c4bd5f3458cde (patch)
tree2f2381a497126df7030b96450b1b1bfd4257c487 /src/ex_cmds.c
parentbf63011a52a3cc32609ae5945665875062a5ae50 (diff)
patch 9.0.1571: RedrawingDisabled not used consistentlyv9.0.1571
Problem: RedrawingDisabled not used consistently. Solution: Avoid RedrawingDisabled going negative. Set RedrawingDisabled in win_split_ins(). (closes #11961)
Diffstat (limited to 'src/ex_cmds.c')
-rw-r--r--src/ex_cmds.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/ex_cmds.c b/src/ex_cmds.c
index 0fd6d10f71..20d4d9a2ea 100644
--- a/src/ex_cmds.c
+++ b/src/ex_cmds.c
@@ -3219,7 +3219,8 @@ do_ecmd(
(void)keymap_init();
#endif
- --RedrawingDisabled;
+ if (RedrawingDisabled > 0)
+ --RedrawingDisabled;
did_inc_redrawing_disabled = FALSE;
if (!skip_redraw)
{
@@ -3263,7 +3264,7 @@ do_ecmd(
#endif
theend:
- if (did_inc_redrawing_disabled)
+ if (did_inc_redrawing_disabled && RedrawingDisabled > 0)
--RedrawingDisabled;
#if defined(FEAT_EVAL)
if (did_set_swapcommand)
@@ -3735,7 +3736,6 @@ ex_substitute(exarg_T *eap)
int sublen;
int got_quit = FALSE;
int got_match = FALSE;
- int temp;
int which_pat;
char_u *cmd;
int save_State;
@@ -4316,7 +4316,7 @@ ex_substitute(exarg_T *eap)
#endif
// Invert the matched string.
// Remove the inversion afterwards.
- temp = RedrawingDisabled;
+ int save_RedrawingDisabled = RedrawingDisabled;
RedrawingDisabled = 0;
// avoid calling update_screen() in vgetorpeek()
@@ -4386,7 +4386,7 @@ ex_substitute(exarg_T *eap)
msg_scroll = i;
showruler(TRUE);
windgoto(msg_row, msg_col);
- RedrawingDisabled = temp;
+ RedrawingDisabled = save_RedrawingDisabled;
#ifdef USE_ON_FLY_SCROLL
dont_scroll = FALSE; // allow scrolling here
Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
/* linux/arch/arm/mach-exynos4/include/mach/vmalloc.h
 *
 * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
 *		http://www.samsung.com
 *
 * Copyright 2010 Ben Dooks <ben-linux@fluff.org>
 *
 * Based on arch/arm/mach-s5p6440/include/mach/vmalloc.h
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 *
 * EXYNOS4 vmalloc definition
*/

#ifndef __ASM_ARCH_VMALLOC_H
#define __ASM_ARCH_VMALLOC_H __FILE__

#define VMALLOC_END	0xF6000000UL

#endif /* __ASM_ARCH_VMALLOC_H */