diff options
author | Bram Moolenaar <Bram@vim.org> | 2020-10-19 20:21:03 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2020-10-19 20:21:03 +0200 |
commit | 66fa5fd54f550c0790d36c20124c49493b323bfa (patch) | |
tree | 0e6367f0f6677dc61cae3033c0a2c68f4c4e2eb3 | |
parent | 1dcae59957301b6b19aef49af648715f911a1378 (diff) | |
download | vim-git-66fa5fd54f550c0790d36c20124c49493b323bfa.tar.gz |
patch 8.2.1866: Vim9: appending to pushed blob gives wrong resultv8.2.1866
Problem: Vim9: appending to pushed blob gives wrong result.
Solution: Set ga_maxlen when copying a blob.
-rw-r--r-- | src/blob.c | 1 | ||||
-rw-r--r-- | src/testdir/test_vim9_func.vim | 6 | ||||
-rw-r--r-- | src/version.c | 2 |
3 files changed, 9 insertions, 0 deletions
diff --git a/src/blob.c b/src/blob.c index f105170cf..264962e19 100644 --- a/src/blob.c +++ b/src/blob.c @@ -80,6 +80,7 @@ blob_copy(blob_T *from, typval_T *to) len = 0; } to->vval.v_blob->bv_ga.ga_len = len; + to->vval.v_blob->bv_ga.ga_maxlen = len; } return ret; } diff --git a/src/testdir/test_vim9_func.vim b/src/testdir/test_vim9_func.vim index bded91f78..4af136cef 100644 --- a/src/testdir/test_vim9_func.vim +++ b/src/testdir/test_vim9_func.vim @@ -1790,6 +1790,12 @@ def Test_list_add() CheckDefExecFailure(lines, 'E1130:', 2) enddef +def Test_blob_add() + var b: blob = 0z12 + add(b, 0x34) + assert_equal(0z1234, b) +enddef + def SID(): number return expand('<SID>') ->matchstr('<SNR>\zs\d\+\ze_$') diff --git a/src/version.c b/src/version.c index 2894dedb8..1b60ebd2a 100644 --- a/src/version.c +++ b/src/version.c @@ -751,6 +751,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1866, +/**/ 1865, /**/ 1864, |