forked from aniani/vim
patch 7.4.848
Problem: CTRL-A on hex number in Visual block mode is incorrect. Solution: Account for the "0x". (Hirohito Higashi)
This commit is contained in:
parent
8667d66ca9
commit
5adfea1ac6
@ -1909,6 +1909,8 @@ vim_str2nr(start, hexp, len, dooct, dohex, nptr, unptr, maxlen)
|
||||
else if (hex != 0 || dohex > 1)
|
||||
{
|
||||
/* hex */
|
||||
if (hex != 0)
|
||||
n += 2; /* skip over "0x" */
|
||||
while (vim_isxdigit(*ptr))
|
||||
{
|
||||
un = 16 * un + (unsigned long)hex2nr(*ptr);
|
||||
|
@ -277,7 +277,15 @@ Text:
|
||||
Expected:
|
||||
1) <Ctrl-a> and cursor is on a
|
||||
b
|
||||
|
||||
|
||||
21) block-wise increment on part of hexadecimal
|
||||
Text:
|
||||
0x123456
|
||||
|
||||
Expected:
|
||||
1) Ctrl-V f3 <ctrl-a>
|
||||
0x124456
|
||||
|
||||
|
||||
|
||||
STARTTEST
|
||||
@ -401,6 +409,12 @@ V3kg..
|
||||
:.put =col('.')
|
||||
:set nrformats&vim
|
||||
|
||||
:" Test 21
|
||||
:/^S21=/+,/^E21=/-y a
|
||||
:/^E21=/+put a
|
||||
:set nrformats&vim
|
||||
f3
|
||||
|
||||
:" Save the report
|
||||
:/^# Test 1/,$w! test.out
|
||||
:qa!
|
||||
@ -594,6 +608,13 @@ E20====
|
||||
|
||||
|
||||
|
||||
# Test 21
|
||||
S21====
|
||||
0x123456
|
||||
E21====
|
||||
|
||||
|
||||
|
||||
|
||||
ENDTEST
|
||||
|
||||
|
@ -280,6 +280,14 @@ b
|
||||
1
|
||||
|
||||
|
||||
# Test 21
|
||||
S21====
|
||||
0x123456
|
||||
E21====
|
||||
|
||||
0x124456
|
||||
|
||||
|
||||
|
||||
ENDTEST
|
||||
|
||||
|
@ -741,6 +741,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
848,
|
||||
/**/
|
||||
847,
|
||||
/**/
|
||||
|
Loading…
x
Reference in New Issue
Block a user