patch 8.2.1866: Vim9: appending to pushed blob gives wrong result

Problem:    Vim9: appending to pushed blob gives wrong result.
Solution:   Set ga_maxlen when copying a blob.
diff --git a/src/blob.c b/src/blob.c
index f105170..264962e 100644
--- a/src/blob.c
+++ b/src/blob.c
@@ -80,6 +80,7 @@
 		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 bded91f..4af136c 100644
--- a/src/testdir/test_vim9_func.vim
+++ b/src/testdir/test_vim9_func.vim
@@ -1790,6 +1790,12 @@
   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 2894ded..1b60ebd 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1866,
+/**/
     1865,
 /**/
     1864,