]> granicus.if.org Git - vim/commitdiff
patch 8.1.0452: MS-Windows: not finding intl.dll v8.1.0452
authorBram Moolenaar <Bram@vim.org>
Sat, 6 Oct 2018 13:03:15 +0000 (15:03 +0200)
committerBram Moolenaar <Bram@vim.org>
Sat, 6 Oct 2018 13:03:15 +0000 (15:03 +0200)
Problem:    MS-Windows: not finding intl.dll.
Solution:   Also find intl.dll next to libintl.dll. (Ken Takata)

runtime/doc/mlang.txt
src/os_win32.c
src/version.c

index 4d85bbd43d62728891116d9d9d9914f266bc55b4..f25aef27516d8fc2a8bd9fac8ead91b5fb2cdb80 100644 (file)
@@ -102,8 +102,10 @@ Or:
 
 This also contains tools xgettext, msgformat and others.
 
-libintl.dll should be placed in same directory with (g)vim.exe, or some
-place where PATH environment value describe.  Vim also finds libintl-8.dll.
+libintl.dll should be placed in same directory as (g)vim.exe, or one of the
+directories listed in the PATH environment value.  Vim also looks for the
+alternate names "libintl-8.dll" and "intl.dll".
+
 Message files (vim.mo) have to be placed in "$VIMRUNTIME/lang/xx/LC_MESSAGES",
 where "xx" is the abbreviation of the language (mostly two letters).
 
index a53b7b6270aea337d8e6dfac4889b1120832d7ef..4ba060bb909b7ebcbcb3df95fe3f1b28a8a091b2 100644 (file)
@@ -573,7 +573,8 @@ get_dll_import_func(HINSTANCE hInst, const char *funcname)
 #if defined(DYNAMIC_GETTEXT) || defined(PROTO)
 # ifndef GETTEXT_DLL
 #  define GETTEXT_DLL "libintl.dll"
-#  define GETTEXT_DLL_ALT "libintl-8.dll"
+#  define GETTEXT_DLL_ALT1 "libintl-8.dll"
+#  define GETTEXT_DLL_ALT2 "intl.dll"
 # endif
 /* Dummy functions */
 static char *null_libintl_gettext(const char *);
@@ -614,14 +615,18 @@ dyn_libintl_init(void)
     };
     HINSTANCE hmsvcrt;
 
-    /* No need to initialize twice. */
-    if (hLibintlDLL)
+    // No need to initialize twice.
+    if (hLibintlDLL != NULL)
        return 1;
-    /* Load gettext library (libintl.dll) */
+    // Load gettext library (libintl.dll and other names).
     hLibintlDLL = vimLoadLib(GETTEXT_DLL);
-#ifdef GETTEXT_DLL_ALT
+#ifdef GETTEXT_DLL_ALT1
+    if (!hLibintlDLL)
+       hLibintlDLL = vimLoadLib(GETTEXT_DLL_ALT1);
+#endif
+#ifdef GETTEXT_DLL_ALT2
     if (!hLibintlDLL)
-       hLibintlDLL = vimLoadLib(GETTEXT_DLL_ALT);
+       hLibintlDLL = vimLoadLib(GETTEXT_DLL_ALT2);
 #endif
     if (!hLibintlDLL)
     {
index a225cb9c231142123e8534cecb54e4fdee1f9387..b50ce81aa5f17b5cb91a2b8b4abbc84aa24ad703 100644 (file)
@@ -792,6 +792,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    452,
 /**/
     451,
 /**/