summaryrefslogtreecommitdiff
path: root/Source/WebKit
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebKit')
-rw-r--r--Source/WebKit/CMakeLists.txt2
-rw-r--r--Source/WebKit/PlatformQt.cmake2
-rw-r--r--Source/WebKit/qt/declarative/CMakeLists.txt2
-rw-r--r--Source/WebKit/qt/declarative/experimental/CMakeLists.txt2
-rw-r--r--Source/WebKit/qt/tests/CMakeLists.txt2
-rw-r--r--Source/WebKit/win/Plugins/PluginDatabaseWin.cpp41
-rw-r--r--Source/WebKit/win/Plugins/PluginPackageWin.cpp14
-rw-r--r--Source/WebKit/win/Plugins/PluginViewWin.cpp5
8 files changed, 38 insertions, 32 deletions
diff --git a/Source/WebKit/CMakeLists.txt b/Source/WebKit/CMakeLists.txt
index edc22fee9..82dc1e662 100644
--- a/Source/WebKit/CMakeLists.txt
+++ b/Source/WebKit/CMakeLists.txt
@@ -60,7 +60,7 @@ if (${PORT} STREQUAL "Qt")
DESTINATION "${LIB_INSTALL_DIR}"
RUNTIME DESTINATION "${BIN_INSTALL_DIR}"
)
- if (MSVC)
+ if (MSVC AND NOT QT_STATIC_BUILD)
install(FILES $<TARGET_PDB_FILE:WebKit> DESTINATION "${BIN_INSTALL_DIR}" OPTIONAL)
endif ()
diff --git a/Source/WebKit/PlatformQt.cmake b/Source/WebKit/PlatformQt.cmake
index da199aeaf..3e50b2552 100644
--- a/Source/WebKit/PlatformQt.cmake
+++ b/Source/WebKit/PlatformQt.cmake
@@ -758,7 +758,7 @@ install(TARGETS WebKitWidgets EXPORT Qt5WebKitWidgetsTargets
DESTINATION "${LIB_INSTALL_DIR}"
RUNTIME DESTINATION "${BIN_INSTALL_DIR}"
)
-if (MSVC)
+if (MSVC AND NOT QT_STATIC_BUILD)
install(FILES $<TARGET_PDB_FILE:WebKitWidgets> DESTINATION "${BIN_INSTALL_DIR}" OPTIONAL)
endif ()
diff --git a/Source/WebKit/qt/declarative/CMakeLists.txt b/Source/WebKit/qt/declarative/CMakeLists.txt
index 6a76e88b5..e1ba22bc1 100644
--- a/Source/WebKit/qt/declarative/CMakeLists.txt
+++ b/Source/WebKit/qt/declarative/CMakeLists.txt
@@ -38,6 +38,8 @@ set_target_properties(qmlwebkitplugin PROPERTIES
ARCHIVE_OUTPUT_DIRECTORY_RELEASE ${qmlwebkit_output_dir}
LIBRARY_OUTPUT_DIRECTORY_RELEASE ${qmlwebkit_output_dir}
RUNTIME_OUTPUT_DIRECTORY_RELEASE ${qmlwebkit_output_dir}
+
+ AUTOMOC ON
)
add_custom_target(
diff --git a/Source/WebKit/qt/declarative/experimental/CMakeLists.txt b/Source/WebKit/qt/declarative/experimental/CMakeLists.txt
index e4d41798c..1526e6f47 100644
--- a/Source/WebKit/qt/declarative/experimental/CMakeLists.txt
+++ b/Source/WebKit/qt/declarative/experimental/CMakeLists.txt
@@ -15,6 +15,8 @@ set_target_properties(qmlwebkitexperimentalplugin PROPERTIES
ARCHIVE_OUTPUT_DIRECTORY_RELEASE ${qmlwebkitexperimental_output_dir}
LIBRARY_OUTPUT_DIRECTORY_RELEASE ${qmlwebkitexperimental_output_dir}
RUNTIME_OUTPUT_DIRECTORY_RELEASE ${qmlwebkitexperimental_output_dir}
+
+ AUTOMOC ON
)
add_custom_target(
diff --git a/Source/WebKit/qt/tests/CMakeLists.txt b/Source/WebKit/qt/tests/CMakeLists.txt
index 4fd45c624..3dc6af1d5 100644
--- a/Source/WebKit/qt/tests/CMakeLists.txt
+++ b/Source/WebKit/qt/tests/CMakeLists.txt
@@ -57,7 +57,7 @@ foreach (testName ${QtWK1ApiTests})
add_executable(tst_${testName} ${tst_${testName}_SOURCES})
target_include_directories(tst_${testName} PRIVATE ${testName})
target_link_libraries(tst_${testName} ${QtWK1ApiTests_LIBRARIES})
- set_target_properties(tst_${testName} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${QtWK1ApiTests_RUNTIME_OUTPUT_DIRECTORY})
+ set_target_properties(tst_${testName} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${QtWK1ApiTests_RUNTIME_OUTPUT_DIRECTORY} AUTOMOC ON)
add_test(${testName} "${QtWK1ApiTests_RUNTIME_OUTPUT_DIRECTORY}/tst_${testName}")
set_tests_properties(${testName} PROPERTIES TIMEOUT 60)
diff --git a/Source/WebKit/win/Plugins/PluginDatabaseWin.cpp b/Source/WebKit/win/Plugins/PluginDatabaseWin.cpp
index ea272601b..8230a793c 100644
--- a/Source/WebKit/win/Plugins/PluginDatabaseWin.cpp
+++ b/Source/WebKit/win/Plugins/PluginDatabaseWin.cpp
@@ -32,6 +32,7 @@
#include "URL.h"
#include "PluginPackage.h"
#include <wtf/WindowsExtras.h>
+#include <wtf/text/win/WCharStringExtras.h>
namespace WebCore {
@@ -62,7 +63,7 @@ static inline void addPluginPathsFromRegistry(HKEY rootKey, HashSet<String>& pat
if (result != ERROR_SUCCESS || type != REG_SZ)
continue;
- paths.add(String(pathStr, pathStrSize / sizeof(WCHAR) - 1));
+ paths.add(wcharToString(pathStr, pathStrSize / sizeof(WCHAR) - 1));
}
RegCloseKey(key);
@@ -83,7 +84,7 @@ void PluginDatabase::getPluginPathsInDirectories(HashSet<String>& paths) const
for (Vector<String>::const_iterator it = m_pluginDirectories.begin(); it != end; ++it) {
String pattern = *it + "\\*";
- hFind = FindFirstFileW(pattern.charactersWithNullTermination().data(), &findFileData);
+ hFind = FindFirstFileW(stringToNullTerminatedWChar(pattern).data(), &findFileData);
if (hFind == INVALID_HANDLE_VALUE)
continue;
@@ -92,7 +93,7 @@ void PluginDatabase::getPluginPathsInDirectories(HashSet<String>& paths) const
if (findFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
continue;
- String filename = String(findFileData.cFileName, wcslen(findFileData.cFileName));
+ String filename = wcharToString(findFileData.cFileName, wcslen(findFileData.cFileName));
if ((!filename.startsWith("np", false) || !filename.endsWith("dll", false)) &&
(!equalLettersIgnoringASCIICase(filename, "plugin.dll") || !it->endsWith("Shockwave 10", false)))
continue;
@@ -179,11 +180,11 @@ static inline void addMozillaPluginDirectories(Vector<String>& directories)
if (result != ERROR_SUCCESS)
break;
- String extensionsPath = String(name, nameLen) + "\\Extensions";
+ String extensionsPath = wcharToString(name, nameLen) + "\\Extensions";
HKEY extensionsKey;
// Try opening the key
- result = RegOpenKeyEx(key, extensionsPath.charactersWithNullTermination().data(), 0, KEY_READ, &extensionsKey);
+ result = RegOpenKeyEx(key, stringToNullTerminatedWChar(extensionsPath).data(), 0, KEY_READ, &extensionsKey);
if (result == ERROR_SUCCESS) {
// Now get the plugins directory
@@ -194,7 +195,7 @@ static inline void addMozillaPluginDirectories(Vector<String>& directories)
result = RegQueryValueEx(extensionsKey, TEXT("Plugins"), 0, &type, (LPBYTE)&pluginsDirectoryStr, &pluginsDirectorySize);
if (result == ERROR_SUCCESS && type == REG_SZ)
- directories.append(String(pluginsDirectoryStr, pluginsDirectorySize / sizeof(WCHAR) - 1));
+ directories.append(wcharToString(pluginsDirectoryStr, pluginsDirectorySize / sizeof(WCHAR) - 1));
RegCloseKey(extensionsKey);
}
@@ -211,7 +212,7 @@ static inline void addWindowsMediaPlayerPluginDirectory(Vector<String>& director
DWORD pluginDirectorySize = ::ExpandEnvironmentStringsW(TEXT("%SYSTEMDRIVE%\\PFiles\\Plugins"), pluginDirectoryStr, WTF_ARRAY_LENGTH(pluginDirectoryStr));
if (pluginDirectorySize > 0 && pluginDirectorySize <= WTF_ARRAY_LENGTH(pluginDirectoryStr))
- directories.append(String(pluginDirectoryStr, pluginDirectorySize - 1));
+ directories.append(wcharToString(pluginDirectoryStr, pluginDirectorySize - 1));
DWORD type;
WCHAR installationDirectoryStr[_MAX_PATH];
@@ -220,7 +221,7 @@ static inline void addWindowsMediaPlayerPluginDirectory(Vector<String>& director
HRESULT result = getRegistryValue(HKEY_LOCAL_MACHINE, L"Software\\Microsoft\\MediaPlayer", L"Installation Directory", &type, &installationDirectoryStr, &installationDirectorySize);
if (result == ERROR_SUCCESS && type == REG_SZ)
- directories.append(String(installationDirectoryStr, installationDirectorySize / sizeof(WCHAR) - 1));
+ directories.append(wcharToString(installationDirectoryStr, installationDirectorySize / sizeof(WCHAR) - 1));
}
static inline void addAdobeAcrobatPluginDirectory(Vector<String>& directories)
@@ -244,10 +245,10 @@ static inline void addAdobeAcrobatPluginDirectory(Vector<String>& directories)
if (result != ERROR_SUCCESS)
break;
- Vector<int> acrobatVersion = parseVersionString(String(name, nameLen));
+ Vector<int> acrobatVersion = parseVersionString(wcharToString(name, nameLen));
if (compareVersions(acrobatVersion, latestAcrobatVersion)) {
latestAcrobatVersion = acrobatVersion;
- latestAcrobatVersionString = String(name, nameLen);
+ latestAcrobatVersionString = wcharToString(name, nameLen);
}
}
@@ -257,10 +258,10 @@ static inline void addAdobeAcrobatPluginDirectory(Vector<String>& directories)
DWORD acrobatInstallPathSize = sizeof(acrobatInstallPathStr);
String acrobatPluginKeyPath = "Software\\Adobe\\Acrobat Reader\\" + latestAcrobatVersionString + "\\InstallPath";
- result = getRegistryValue(HKEY_LOCAL_MACHINE, acrobatPluginKeyPath.charactersWithNullTermination().data(), 0, &type, acrobatInstallPathStr, &acrobatInstallPathSize);
+ result = getRegistryValue(HKEY_LOCAL_MACHINE, stringToNullTerminatedWChar(acrobatPluginKeyPath).data(), 0, &type, acrobatInstallPathStr, &acrobatInstallPathSize);
if (result == ERROR_SUCCESS) {
- String acrobatPluginDirectory = String(acrobatInstallPathStr, acrobatInstallPathSize / sizeof(WCHAR) - 1) + "\\browser";
+ String acrobatPluginDirectory = wcharToString(acrobatInstallPathStr, acrobatInstallPathSize / sizeof(WCHAR) - 1) + "\\browser";
directories.append(acrobatPluginDirectory);
}
}
@@ -289,10 +290,10 @@ static inline void addJavaPluginDirectory(Vector<String>& directories)
if (result != ERROR_SUCCESS)
break;
- Vector<int> javaVersion = parseVersionString(String(name, nameLen));
+ Vector<int> javaVersion = parseVersionString(wcharToString(name, nameLen));
if (compareVersions(javaVersion, latestJavaVersion)) {
latestJavaVersion = javaVersion;
- latestJavaVersionString = String(name, nameLen);
+ latestJavaVersionString = wcharToString(name, nameLen);
}
}
@@ -304,12 +305,12 @@ static inline void addJavaPluginDirectory(Vector<String>& directories)
DWORD useNewPluginSize;
String javaPluginKeyPath = "Software\\JavaSoft\\Java Plug-in\\" + latestJavaVersionString;
- result = getRegistryValue(HKEY_LOCAL_MACHINE, javaPluginKeyPath.charactersWithNullTermination().data(), L"UseNewJavaPlugin", &type, &useNewPluginValue, &useNewPluginSize);
+ result = getRegistryValue(HKEY_LOCAL_MACHINE, stringToNullTerminatedWChar(javaPluginKeyPath).data(), L"UseNewJavaPlugin", &type, &useNewPluginValue, &useNewPluginSize);
if (result == ERROR_SUCCESS && useNewPluginValue == 1) {
- result = getRegistryValue(HKEY_LOCAL_MACHINE, javaPluginKeyPath.charactersWithNullTermination().data(), L"JavaHome", &type, javaInstallPathStr, &javaInstallPathSize);
+ result = getRegistryValue(HKEY_LOCAL_MACHINE, stringToNullTerminatedWChar(javaPluginKeyPath).data(), L"JavaHome", &type, javaInstallPathStr, &javaInstallPathSize);
if (result == ERROR_SUCCESS) {
- String javaPluginDirectory = String(javaInstallPathStr, javaInstallPathSize / sizeof(WCHAR) - 1) + "\\bin\\new_plugin";
+ String javaPluginDirectory = wcharToString(javaInstallPathStr, javaInstallPathSize / sizeof(WCHAR) - 1) + "\\bin\\new_plugin";
directories.append(javaPluginDirectory);
}
}
@@ -335,7 +336,7 @@ static inline String safariPluginsDirectory()
if (!PathRemoveFileSpec(moduleFileNameStr))
goto exit;
- pluginsDirectory = String(moduleFileNameStr) + "\\Plugins";
+ pluginsDirectory = nullTerminatedWCharToString(moduleFileNameStr) + "\\Plugins";
}
exit:
return pluginsDirectory;
@@ -351,10 +352,10 @@ static inline void addMacromediaPluginDirectories(Vector<String>& directories)
WCHAR macromediaDirectoryStr[MAX_PATH];
PathCombine(macromediaDirectoryStr, systemDirectoryStr, TEXT("macromed\\Flash"));
- directories.append(macromediaDirectoryStr);
+ directories.append(nullTerminatedWCharToString(macromediaDirectoryStr));
PathCombine(macromediaDirectoryStr, systemDirectoryStr, TEXT("macromed\\Shockwave 10"));
- directories.append(macromediaDirectoryStr);
+ directories.append(nullTerminatedWCharToString(macromediaDirectoryStr));
}
#if PLATFORM(QT)
diff --git a/Source/WebKit/win/Plugins/PluginPackageWin.cpp b/Source/WebKit/win/Plugins/PluginPackageWin.cpp
index 7119d8854..e0094b96b 100644
--- a/Source/WebKit/win/Plugins/PluginPackageWin.cpp
+++ b/Source/WebKit/win/Plugins/PluginPackageWin.cpp
@@ -34,10 +34,11 @@
#include "PluginDebug.h"
#include "Timer.h"
#include "npruntime_impl.h"
+#include <shlwapi.h>
#include <string.h>
#include <wtf/StdLibExtras.h>
#include <wtf/text/CString.h>
-#include <shlwapi.h>
+#include <wtf/text/win/WCharStringExtras.h>
namespace WebCore {
@@ -47,7 +48,7 @@ static String getVersionInfo(const LPVOID versionInfoData, const String& info)
UINT bufferLength;
String subInfo = "\\StringfileInfo\\040904E4\\" + info;
bool retval = VerQueryValueW(versionInfoData,
- const_cast<UChar*>(subInfo.charactersWithNullTermination().data()),
+ stringToNullTerminatedWChar(subInfo).data(),
&buffer, &bufferLength);
if (!retval || bufferLength == 0)
return String();
@@ -167,14 +168,13 @@ void PluginPackage::determineQuirks(const String& mimeType)
bool PluginPackage::fetchInfo()
{
DWORD versionInfoSize, zeroHandle;
- versionInfoSize = GetFileVersionInfoSizeW(const_cast<UChar*>(m_path.charactersWithNullTermination().data()), &zeroHandle);
+ versionInfoSize = GetFileVersionInfoSizeW(stringToNullTerminatedWChar(m_path).data(), &zeroHandle);
if (versionInfoSize == 0)
return false;
auto versionInfoData = std::make_unique<char[]>(versionInfoSize);
- if (!GetFileVersionInfoW(const_cast<UChar*>(m_path.charactersWithNullTermination().data()),
- 0, versionInfoSize, versionInfoData.get()))
+ if (!GetFileVersionInfoW(stringToNullTerminatedWChar(m_path).data(), 0, versionInfoSize, versionInfoData.get()))
return false;
m_name = getVersionInfo(versionInfoData.get(), "ProductName");
@@ -244,11 +244,11 @@ bool PluginPackage::load()
String path = m_path.substring(0, m_path.reverseFind('\\'));
- if (!::SetCurrentDirectoryW(path.charactersWithNullTermination().data()))
+ if (!::SetCurrentDirectoryW(stringToNullTerminatedWChar(path).data()))
return false;
// Load the library
- m_module = ::LoadLibraryExW(m_path.charactersWithNullTermination().data(), 0, LOAD_WITH_ALTERED_SEARCH_PATH);
+ m_module = ::LoadLibraryExW(stringToNullTerminatedWChar(m_path).data(), 0, LOAD_WITH_ALTERED_SEARCH_PATH);
if (!::SetCurrentDirectoryW(currentPath)) {
if (m_module)
diff --git a/Source/WebKit/win/Plugins/PluginViewWin.cpp b/Source/WebKit/win/Plugins/PluginViewWin.cpp
index 68af391fc..a0b41113e 100644
--- a/Source/WebKit/win/Plugins/PluginViewWin.cpp
+++ b/Source/WebKit/win/Plugins/PluginViewWin.cpp
@@ -71,6 +71,7 @@
#include <runtime/JSLock.h>
#include <wtf/ASCIICType.h>
#include <wtf/text/WTFString.h>
+#include <wtf/text/win/WCharStringExtras.h>
#include <wtf/win/GDIObject.h>
#if USE(CAIRO)
@@ -852,13 +853,13 @@ NPError PluginView::handlePostReadFile(Vector<char>& buffer, uint32_t len, const
// Get file info
WIN32_FILE_ATTRIBUTE_DATA attrs;
- if (GetFileAttributesExW(filename.charactersWithNullTermination().data(), GetFileExInfoStandard, &attrs) == 0)
+ if (!GetFileAttributesExW(stringToNullTerminatedWChar(filename).data(), GetFileExInfoStandard, &attrs))
return NPERR_FILE_NOT_FOUND;
if (attrs.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
return NPERR_FILE_NOT_FOUND;
- HANDLE fileHandle = CreateFileW(filename.charactersWithNullTermination().data(), FILE_READ_DATA, FILE_SHARE_READ, 0, OPEN_EXISTING, 0, 0);
+ HANDLE fileHandle = CreateFileW(stringToNullTerminatedWChar(filename).data(), FILE_READ_DATA, FILE_SHARE_READ, 0, OPEN_EXISTING, 0, 0);
if (fileHandle == INVALID_HANDLE_VALUE)
return NPERR_FILE_NOT_FOUND;