aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2019-12-06 18:19:23 +0100
committerMarius Bakke <mbakke@fastmail.com>2020-01-08 21:56:01 +0100
commiteb5f3ea1003f76545b197b1e779e2967ec379475 (patch)
tree7dd43bbafff23aa13edb8d3db9769de550f7a391
parent84f1e12b8b84acca1b3be7d41daacce28feb391d (diff)
downloadguix-eb5f3ea1003f76545b197b1e779e2967ec379475.tar
guix-eb5f3ea1003f76545b197b1e779e2967ec379475.tar.gz
gnu: WebkitGTK: Fix build failure with ICU 65.
* gnu/packages/patches/webkitgtk-icu-65.patch: New file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. * gnu/packages/webkit.scm (webkitgtk)[source](patches): New field.
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/patches/webkitgtk-icu-65.patch47
-rw-r--r--gnu/packages/webkit.scm1
3 files changed, 49 insertions, 0 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index efbd9067bf..7cb5cad2ee 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1464,6 +1464,7 @@ dist_patch_DATA = \
%D%/packages/patches/wavpack-CVE-2018-7253.patch \
%D%/packages/patches/wavpack-CVE-2018-7254.patch \
%D%/packages/patches/weasyprint-library-paths.patch \
+ %D%/packages/patches/webkitgtk-icu-65.patch \
%D%/packages/patches/websocketpp-fix-for-boost-1.70.patch \
%D%/packages/patches/wicd-bitrate-none-fix.patch \
%D%/packages/patches/wicd-get-selected-profile-fix.patch \
diff --git a/gnu/packages/patches/webkitgtk-icu-65.patch b/gnu/packages/patches/webkitgtk-icu-65.patch
new file mode 100644
index 0000000000..66819c566b
--- /dev/null
+++ b/gnu/packages/patches/webkitgtk-icu-65.patch
@@ -0,0 +1,47 @@
+Fix build with ICU 65.
+
+Taken from upstream:
+https://bugs.webkit.org/show_bug.cgi?id=202600
+https://trac.webkit.org/r250747
+
+diff --git a/Source/WTF/wtf/URLHelpers.cpp b/Source/WTF/wtf/URLHelpers.cpp
+index 18e7f13cd615..c584f1a0cb7e 100644
+--- a/Source/WTF/wtf/URLHelpers.cpp
++++ b/Source/WTF/wtf/URLHelpers.cpp
+@@ -301,7 +301,7 @@ static bool allCharactersInIDNScriptWhiteList(const UChar* buffer, int32_t lengt
+ Optional<UChar32> previousCodePoint;
+ while (i < length) {
+ UChar32 c;
+- U16_NEXT(buffer, i, length, c)
++ U16_NEXT(buffer, i, length, c);
+ UErrorCode error = U_ZERO_ERROR;
+ UScriptCode script = uscript_getScript(c, &error);
+ if (error != U_ZERO_ERROR) {
+diff --git a/Source/WebCore/dom/Document.cpp b/Source/WebCore/dom/Document.cpp
+index 2443e24c9bc4..1fbb3a716006 100644
+--- a/Source/WebCore/dom/Document.cpp
++++ b/Source/WebCore/dom/Document.cpp
+@@ -4954,12 +4954,12 @@ static bool isValidNameNonASCII(const UChar* characters, unsigned length)
+ unsigned i = 0;
+
+ UChar32 c;
+- U16_NEXT(characters, i, length, c)
++ U16_NEXT(characters, i, length, c);
+ if (!isValidNameStart(c))
+ return false;
+
+ while (i < length) {
+- U16_NEXT(characters, i, length, c)
++ U16_NEXT(characters, i, length, c);
+ if (!isValidNamePart(c))
+ return false;
+ }
+@@ -5019,7 +5019,7 @@ ExceptionOr<std::pair<AtomString, AtomString>> Document::parseQualifiedName(cons
+
+ for (unsigned i = 0; i < length; ) {
+ UChar32 c;
+- U16_NEXT(qualifiedName, i, length, c)
++ U16_NEXT(qualifiedName, i, length, c);
+ if (c == ':') {
+ if (sawColon)
+ return Exception { InvalidCharacterError };
diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm
index b0b0d79a05..5101ceb2ea 100644
--- a/gnu/packages/webkit.scm
+++ b/gnu/packages/webkit.scm
@@ -126,6 +126,7 @@ engine that uses Wayland for graphics output.")
(method url-fetch)
(uri (string-append "https://www.webkitgtk.org/releases/"
"webkitgtk-" version ".tar.xz"))
+ (patches (search-patches "webkitgtk-icu-65.patch"))
(sha256
(base32
"04k5h0sid9azsqz9pyq436v1rx4lnfrhvmcgmicqb0c0g9iz103b"))))