summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2015-01-14 16:08:32 +0100
committerBram Moolenaar <Bram@vim.org>2015-01-14 16:08:32 +0100
commit5000869712f799d9ca25c0e45dc21d332edae5f4 (patch)
tree288d15c04fc8b4ded049d4c36d08bb51b9852512
parent84c8e5ab9cfb6826e880e8ae062ff3347bb6909e (diff)
updated for version 7.4.573v7.4.573
Problem: Mapping CTRL-C in Visual mode doesn't work. (Ingo Karkat) Solution: Call get_real_state() instead of using State directly.
-rw-r--r--src/testdir/test_mapping.in14
-rw-r--r--src/testdir/test_mapping.ok1
-rw-r--r--src/ui.c2
-rw-r--r--src/version.c2
4 files changed, 14 insertions, 5 deletions
diff --git a/src/testdir/test_mapping.in b/src/testdir/test_mapping.in
index c957569f4d..7ac578f086 100644
--- a/src/testdir/test_mapping.in
+++ b/src/testdir/test_mapping.in
@@ -8,7 +8,7 @@ STARTTEST
:inoreab чкпр vim
GAчкпр

-:" mapping of ctrl-c in insert mode
+:" mapping of ctrl-c in Insert mode
:set cpo-=< cpo-=k
:inoremap <c-c> <ctrl-c>
:cnoremap <c-c> dummy
@@ -16,9 +16,15 @@ GAчкпр
GA
TEST2: CTRL-C |A|

-:nunmap <c-c>
-
-: " langmap should not get remapped in insert mode
+:unmap <c-c>
+:unmap! <c-c>
+:"
+:" mapping of ctrl-c in Visual mode
+:vnoremap <c-c> :<C-u>$put ='vmap works'
+GV
+:vunmap <c-c>
+:"
+:" langmap should not get remapped in insert mode
:inoremap { FAIL_ilangmap
:set langmap=+{ langnoremap
o+
diff --git a/src/testdir/test_mapping.ok b/src/testdir/test_mapping.ok
index cd0e2e1ca1..bf21e514ba 100644
--- a/src/testdir/test_mapping.ok
+++ b/src/testdir/test_mapping.ok
@@ -2,5 +2,6 @@ test starts here:
vim
TEST2: CTRL-C |<ctrl-c>A|
+vmap works
+
+
diff --git a/src/ui.c b/src/ui.c
index 6fc5bde21c..59794829d8 100644
--- a/src/ui.c
+++ b/src/ui.c
@@ -180,7 +180,7 @@ ui_inchar(buf, maxlen, wtime, tb_change_cnt)
/* ... there is no need for CTRL-C to interrupt something, don't let
* it set got_int when it was mapped. */
- if ((mapped_ctrl_c | curbuf->b_mapped_ctrl_c) & State)
+ if ((mapped_ctrl_c | curbuf->b_mapped_ctrl_c) & get_real_state())
ctrl_c_interrupts = FALSE;
}
diff --git a/src/version.c b/src/version.c
index b049ea2295..ed1a6e341c 100644
--- a/src/version.c
+++ b/src/version.c
@@ -742,6 +742,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 573,
+/**/
572,
/**/
571,