# HG changeset patch # User Christian Brabandt # Date 1537620305 -7200 # Node ID 9d9e4a92935740cb0663dcee8235991efd197a15 # Parent 550ac2202b848fed44ba4170e339e1084bbb1efe patch 8.1.0427: MS-Windows GUI: using invalid encoded file name commit https://github.com/vim/vim/commit/7ff8a3cfb6b029f9af1fdf3890e1320cafce5111 Author: Bram Moolenaar Date: Sat Sep 22 14:39:15 2018 +0200 patch 8.1.0427: MS-Windows GUI: using invalid encoded file name Problem: MS-Windows GUI: using invalid encoded file name. Solution: Drop the file name and return NULL. (Ken Takata, closes https://github.com/vim/vim/issues/3467) diff --git a/src/gui_w32.c b/src/gui_w32.c --- a/src/gui_w32.c +++ b/src/gui_w32.c @@ -3627,7 +3627,7 @@ gui_mch_browseW( WCHAR *extp = NULL; WCHAR *initdirp = NULL; WCHAR *filterp; - char_u *p; + char_u *p, *q; if (dflt == NULL) fileBuf[0] = NUL; @@ -3713,16 +3713,16 @@ gui_mch_browseW( /* Convert from UCS2 to 'encoding'. */ p = utf16_to_enc(fileBuf, NULL); - if (p != NULL) - /* when out of memory we get garbage for non-ASCII chars */ - STRCPY(fileBuf, p); - vim_free(p); + if (p == NULL) + return NULL; /* Give focus back to main window (when using MDI). */ SetFocus(s_hwnd); /* Shorten the file name if possible */ - return vim_strsave(shorten_fname1((char_u *)fileBuf)); + q = vim_strsave(shorten_fname1(p)); + vim_free(p); + return q; } # endif /* FEAT_MBYTE */ diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -795,6 +795,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 427, +/**/ 426, /**/ 425,