diff options
Diffstat (limited to 'lang/phantomjs/files')
-rw-r--r-- | lang/phantomjs/files/patch-icu59 | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/lang/phantomjs/files/patch-icu59 b/lang/phantomjs/files/patch-icu59 new file mode 100644 index 000000000000..2db4075f7530 --- /dev/null +++ b/lang/phantomjs/files/patch-icu59 @@ -0,0 +1,64 @@ +------------------------------------------------------------------------ +r216187 | annulen@yandex.ru | 2017-05-05 00:33:41 +0900 (Fri, 05 May 2017) | 28 lines + +Fix compilation with ICU 59.1 +https://bugs.webkit.org/show_bug.cgi?id=171612 + +Reviewed by Mark Lam. + +ICU 59.1 has broken source compatibility. Now it defines UChar as +char16_t, which does not allow automatic type conversion from unsigned +short in C++ code. + +--- src/qt/qtwebkit/Source/JavaScriptCore/API/JSStringRef.cpp.orig 2016-01-08 10:07:46 UTC ++++ src/qt/qtwebkit/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* + 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) +--- src/qt/qtwebkit/Source/JavaScriptCore/runtime/DateConversion.cpp.orig 2016-01-08 10:07:46 UTC ++++ src/qt/qtwebkit/Source/JavaScriptCore/runtime/DateConversion.cpp +@@ -107,7 +107,8 @@ String formatDateTime(const GregorianDateTime& t, Date + #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]; +--- src/qt/qtwebkit/Source/WebKit2/Shared/API/c/WKString.cpp.orig 2016-01-08 10:07:46 UTC ++++ src/qt/qtwebkit/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) |