diff --git a/src/edit.c b/src/edit.c
index dacbef574e541a5121d15b2e28b6cdb7155499ea..46b496ba4592c7ec7b72815cbeeac730dc58e021 100644
--- a/src/edit.c
+++ b/src/edit.c
@@ -4970,16 +4970,18 @@ ins_complete(c)
 	     * just a safety check. */
 	    if (compl_curr_match->cp_number != -1)
 	    {
-		/* Space for 10 text chars. + 2x10-digit no.s */
-		static char_u match_ref[31];
+		/* Space for 10 text chars. + 2x10-digit no.s = 31.
+		 * Translations may need more than twice that. */
+		static char_u match_ref[81];
 
 		if (compl_matches > 0)
-		    sprintf((char *)IObuff, _("match %d of %d"),
+		    vim_snprintf((char *)match_ref, sizeof(match_ref),
+				_("match %d of %d"),
 				compl_curr_match->cp_number, compl_matches);
 		else
-		    sprintf((char *)IObuff, _("match %d"),
-						 compl_curr_match->cp_number);
-		vim_strncpy(match_ref, IObuff, 30);
+		    vim_snprintf((char *)match_ref, sizeof(match_ref),
+				_("match %d"),
+				compl_curr_match->cp_number);
 		edit_submode_extra = match_ref;
 		edit_submode_highl = HLF_R;
 		if (dollar_vcol)
diff --git a/src/version.c b/src/version.c
index 5e84c66055bfc30f129a8e332dfbdf3fbbaf3c73..4459e5fce412e20a696c8a5fb6c3db3bd55dc524 100644
--- a/src/version.c
+++ b/src/version.c
@@ -666,6 +666,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    189,
 /**/
     188,
 /**/