summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/regexp.c9
-rw-r--r--src/version.c2
2 files changed, 10 insertions, 1 deletions
diff --git a/src/regexp.c b/src/regexp.c
index bf0f67a030..071663f66f 100644
--- a/src/regexp.c
+++ b/src/regexp.c
@@ -7014,7 +7014,14 @@ vim_regsub_both(source, dest, copy, magic, backslash)
#ifdef FEAT_MBYTE
if (has_mbyte)
{
- int l = mb_ptr2len(s) - 1;
+ int l;
+
+ /* Copy composing characters separately, one
+ * at a time. */
+ if (enc_utf8)
+ l = utf_ptr2len(s) - 1;
+ else
+ l = mb_ptr2len(s) - 1;
s += l;
len -= l;
diff --git a/src/version.c b/src/version.c
index c4e1de31f5..65fa188c08 100644
--- a/src/version.c
+++ b/src/version.c
@@ -667,6 +667,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 46,
+/**/
45,
/**/
44,