Title: [225767] trunk
Revision
225767
Author
[email protected]
Date
2017-12-11 18:45:13 -0800 (Mon, 11 Dec 2017)

Log Message

[WinCairo] DLLLauncherMain should use SetDllDirectory
https://bugs.webkit.org/show_bug.cgi?id=180642

Patch by Fujii Hironori <[email protected]> on 2017-12-11
Reviewed by Alex Christensen.

Windows have icuuc.dll in the system directory. WebKit should find
one in WebKitLibraries directory, not one in the system directory.

Source/_javascript_Core:

* shell/DLLLauncherMain.cpp:
(modifyPath): Use SetDllDirectory for WebKitLibraries directory instead of modifying path.

Tools:

* win/DLLLauncher/DLLLauncherMain.cpp:
(modifyPath): Use SetDllDirectory for WebKitLibraries directory instead of modifying path.
Do not add a path for GStreamer because nobody is using now.

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (225766 => 225767)


--- trunk/Source/_javascript_Core/ChangeLog	2017-12-12 01:17:21 UTC (rev 225766)
+++ trunk/Source/_javascript_Core/ChangeLog	2017-12-12 02:45:13 UTC (rev 225767)
@@ -1,3 +1,16 @@
+2017-12-11  Fujii Hironori  <[email protected]>
+
+        [WinCairo] DLLLauncherMain should use SetDllDirectory
+        https://bugs.webkit.org/show_bug.cgi?id=180642
+
+        Reviewed by Alex Christensen.
+
+        Windows have icuuc.dll in the system directory. WebKit should find
+        one in WebKitLibraries directory, not one in the system directory.
+
+        * shell/DLLLauncherMain.cpp:
+        (modifyPath): Use SetDllDirectory for WebKitLibraries directory instead of modifying path.
+
 2017-12-11  Eric Carlson  <[email protected]>
 
         Web Inspector: Optionally log WebKit log parameters as JSON

Modified: trunk/Source/_javascript_Core/shell/DLLLauncherMain.cpp (225766 => 225767)


--- trunk/Source/_javascript_Core/shell/DLLLauncherMain.cpp	2017-12-12 01:17:21 UTC (rev 225766)
+++ trunk/Source/_javascript_Core/shell/DLLLauncherMain.cpp	2017-12-12 02:45:13 UTC (rev 225767)
@@ -124,12 +124,18 @@
 {
 #ifdef WIN_CAIRO
 
+    wstring pathWinCairo = copyEnvironmentVariable(L"WEBKIT_LIBRARIES");
+    if (!directoryExists(pathWinCairo))
+        return true;
 #if defined(_M_X64)
-    wstring pathWinCairo = copyEnvironmentVariable(L"WEBKIT_LIBRARIES") + L"\\bin64";
+    pathWinCairo += L"\\bin64";
 #else
-    wstring pathWinCairo = copyEnvironmentVariable(L"WEBKIT_LIBRARIES") + L"\\bin32";
+    pathWinCairo += L"\\bin32";
 #endif
-    prependPath(pathWinCairo);
+    if (!SetDllDirectory(pathWinCairo.c_str())) {
+        fatalError(programName, L"Failed to SetDllDirectory");
+        return false;
+    }
     return true;
 
 #else

Modified: trunk/Tools/ChangeLog (225766 => 225767)


--- trunk/Tools/ChangeLog	2017-12-12 01:17:21 UTC (rev 225766)
+++ trunk/Tools/ChangeLog	2017-12-12 02:45:13 UTC (rev 225767)
@@ -1,3 +1,17 @@
+2017-12-11  Fujii Hironori  <[email protected]>
+
+        [WinCairo] DLLLauncherMain should use SetDllDirectory
+        https://bugs.webkit.org/show_bug.cgi?id=180642
+
+        Reviewed by Alex Christensen.
+
+        Windows have icuuc.dll in the system directory. WebKit should find
+        one in WebKitLibraries directory, not one in the system directory.
+
+        * win/DLLLauncher/DLLLauncherMain.cpp:
+        (modifyPath): Use SetDllDirectory for WebKitLibraries directory instead of modifying path.
+        Do not add a path for GStreamer because nobody is using now.
+
 2017-12-11  David Quesada  <[email protected]>
 
         Turn on ENABLE_APPLICATION_MANIFEST

Modified: trunk/Tools/win/DLLLauncher/DLLLauncherMain.cpp (225766 => 225767)


--- trunk/Tools/win/DLLLauncher/DLLLauncherMain.cpp	2017-12-12 01:17:21 UTC (rev 225766)
+++ trunk/Tools/win/DLLLauncher/DLLLauncherMain.cpp	2017-12-12 02:45:13 UTC (rev 225767)
@@ -121,16 +121,18 @@
 {
 #ifdef WIN_CAIRO
 
+    wstring pathWinCairo = copyEnvironmentVariable(L"WEBKIT_LIBRARIES");
+    if (!directoryExists(pathWinCairo))
+        return true;
 #if defined(_M_X64)
-    wstring pathGStreamer = copyEnvironmentVariable(L"GSTREAMER_1_0_ROOT_X86_64") + L"bin";
-    wstring pathWinCairo = copyEnvironmentVariable(L"WEBKIT_LIBRARIES") + L"\\bin64";
+    pathWinCairo += L"\\bin64";
 #else
-    wstring pathGStreamer = copyEnvironmentVariable(L"GSTREAMER_1_0_ROOT_X86") + L"bin";
-    wstring pathWinCairo = copyEnvironmentVariable(L"WEBKIT_LIBRARIES") + L"\\bin32";
+    pathWinCairo += L"\\bin32";
 #endif
-    prependPath(pathWinCairo);
-    if (directoryExists(pathGStreamer))
-        prependPath(pathGStreamer);
+    if (!SetDllDirectory(pathWinCairo.c_str())) {
+        fatalError(programName, L"Failed to SetDllDirectory");
+        return false;
+    }
     return true;
 
 #else
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to