mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-18 07:46:09 +01:00
qt56.qtwebkit: fix with icu-59 by upstream patch
The patch is from qtwebkit-5.9.1, but it's fairly simple and seems to work here as well.
This commit is contained in:
parent
f7d308dbdc
commit
26db832fee
2 changed files with 87 additions and 0 deletions
|
@ -0,0 +1,86 @@
|
|||
From: Konstantin Tokarev <annulen@yandex.ru>
|
||||
Date: Thu, 4 May 2017 12:12:37 +0000 (+0300)
|
||||
Subject: Fix compilation with ICU 59
|
||||
X-Git-Url: https://codereview.qt-project.org/gitweb?p=qt%2Fqtwebkit.git;a=commitdiff_plain;h=bf172ae289a1348842005a9421797970f9b72060;hp=821eaaadc9d63d03aca65cf757230b520daaaa7c
|
||||
|
||||
Fix compilation with ICU 59
|
||||
|
||||
Upstream fix: https://bugs.webkit.org/show_bug.cgi?id=171612
|
||||
|
||||
Task-number: QTBUG-60532
|
||||
Change-Id: I6014feea213aa70ebe40b09d9d1a03fd1ed3c843
|
||||
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
||||
---
|
||||
|
||||
diff --git a/Source/JavaScriptCore/API/JSStringRef.cpp b/Source/JavaScriptCore/API/JSStringRef.cpp
|
||||
index 812f3d4..77a3fd0 100644
|
||||
--- a/Source/JavaScriptCore/API/JSStringRef.cpp
|
||||
+++ b/Source/JavaScriptCore/API/JSStringRef.cpp
|
||||
@@ -37,7 +37,7 @@ using namespace WTF::Unicode;
|
||||
JSStringRef JSStringCreateWithCharacters(const JSChar* chars, size_t numChars)
|
||||
{
|
||||
initializeThreading();
|
||||
- return OpaqueJSString::create(chars, numChars).leakRef();
|
||||
+ return OpaqueJSString::create(reinterpret_cast<const UChar*>(chars), numChars).leakRef();
|
||||
}
|
||||
|
||||
JSStringRef JSStringCreateWithUTF8CString(const char* string)
|
||||
@@ -62,7 +62,7 @@ JSStringRef JSStringCreateWithUTF8CString(const char* string)
|
||||
JSStringRef JSStringCreateWithCharactersNoCopy(const JSChar* chars, size_t numChars)
|
||||
{
|
||||
initializeThreading();
|
||||
- return OpaqueJSString::create(StringImpl::createWithoutCopying(chars, numChars, WTF::DoesNotHaveTerminatingNullCharacter)).leakRef();
|
||||
+ return OpaqueJSString::create(StringImpl::createWithoutCopying(reinterpret_cast<const UChar*>(chars), numChars, WTF::DoesNotHaveTerminatingNullCharacter)).leakRef();
|
||||
}
|
||||
|
||||
JSStringRef JSStringRetain(JSStringRef string)
|
||||
@@ -83,7 +83,7 @@ size_t JSStringGetLength(JSStringRef string)
|
||||
|
||||
const JSChar* JSStringGetCharactersPtr(JSStringRef string)
|
||||
{
|
||||
- return string->characters();
|
||||
+ return reinterpret_cast<const JSChar*>(string->characters());
|
||||
}
|
||||
|
||||
size_t JSStringGetMaximumUTF8CStringSize(JSStringRef string)
|
||||
diff --git a/Source/JavaScriptCore/runtime/DateConversion.cpp b/Source/JavaScriptCore/runtime/DateConversion.cpp
|
||||
index 0b57f01..05e2733 100644
|
||||
--- a/Source/JavaScriptCore/runtime/DateConversion.cpp
|
||||
+++ b/Source/JavaScriptCore/runtime/DateConversion.cpp
|
||||
@@ -107,7 +107,8 @@ String formatDateTime(const GregorianDateTime& t, DateTimeFormat format, bool as
|
||||
#if OS(WINDOWS)
|
||||
TIME_ZONE_INFORMATION timeZoneInformation;
|
||||
GetTimeZoneInformation(&timeZoneInformation);
|
||||
- const WCHAR* timeZoneName = t.isDST() ? timeZoneInformation.DaylightName : timeZoneInformation.StandardName;
|
||||
+ const WCHAR* winTimeZoneName = t.isDST() ? timeZoneInformation.DaylightName : timeZoneInformation.StandardName;
|
||||
+ String timeZoneName(reinterpret_cast<const UChar*>(winTimeZoneName));
|
||||
#else
|
||||
struct tm gtm = t;
|
||||
char timeZoneName[70];
|
||||
diff --git a/Source/WTF/wtf/TypeTraits.h b/Source/WTF/wtf/TypeTraits.h
|
||||
index 9df2c95..f5d6121 100644
|
||||
--- a/Source/WTF/wtf/TypeTraits.h
|
||||
+++ b/Source/WTF/wtf/TypeTraits.h
|
||||
@@ -72,6 +72,9 @@ namespace WTF {
|
||||
template<> struct IsInteger<unsigned long> { static const bool value = true; };
|
||||
template<> struct IsInteger<long long> { static const bool value = true; };
|
||||
template<> struct IsInteger<unsigned long long> { static const bool value = true; };
|
||||
+#if __cplusplus >= 201103L || defined(__GXX_EXPERIMENTAL_CXX0X__) || (defined(_HAS_CHAR16_T_LANGUAGE_SUPPORT) && _HAS_CHAR16_T_LANGUAGE_SUPPORT)
|
||||
+ template<> struct IsInteger<char16_t> { static const bool value = true; };
|
||||
+#endif
|
||||
#if !COMPILER(MSVC) || defined(_NATIVE_WCHAR_T_DEFINED)
|
||||
template<> struct IsInteger<wchar_t> { static const bool value = true; };
|
||||
#endif
|
||||
diff --git a/Source/WebKit2/Shared/API/c/WKString.cpp b/Source/WebKit2/Shared/API/c/WKString.cpp
|
||||
index cbac67d..23400a6 100644
|
||||
--- a/Source/WebKit2/Shared/API/c/WKString.cpp
|
||||
+++ b/Source/WebKit2/Shared/API/c/WKString.cpp
|
||||
@@ -55,7 +55,7 @@ size_t WKStringGetLength(WKStringRef stringRef)
|
||||
size_t WKStringGetCharacters(WKStringRef stringRef, WKChar* buffer, size_t bufferLength)
|
||||
{
|
||||
COMPILE_ASSERT(sizeof(WKChar) == sizeof(UChar), WKStringGetCharacters_sizeof_WKChar_matches_UChar);
|
||||
- return (toImpl(stringRef)->getCharacters(static_cast<UChar*>(buffer), bufferLength));
|
||||
+ return (toImpl(stringRef)->getCharacters(reinterpret_cast<UChar*>(buffer), bufferLength));
|
||||
}
|
||||
|
||||
size_t WKStringGetMaximumUTF8CStringSize(WKStringRef stringRef)
|
|
@ -1,3 +1,4 @@
|
|||
qtwebkit-dlopen-gtk.patch
|
||||
qtwebkit-dlopen-udev.patch
|
||||
qtwebkit-icucore-darwin.patch
|
||||
qtwebkit-icu-59.patch
|
||||
|
|
Loading…
Reference in a new issue