<pre style='margin:0'>
Christopher Nielsen (mascguy) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/bca4f840a7b21f64eab06c026aaffa1cc6b6a214">https://github.com/macports/macports-ports/commit/bca4f840a7b21f64eab06c026aaffa1cc6b6a214</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit bca4f840a7b21f64eab06c026aaffa1cc6b6a214
</span>Author: Kirill A. Korinsky <kirill@korins.ky>
AuthorDate: Mon Sep 5 16:01:05 2022 +0200

<span style='display:block; white-space:pre;color:#404040;'>    webkit2-gtk-devel: fix build with ICU 68
</span>---
 www/webkit2-gtk-devel/Portfile                     |   3 +
 .../files/patch-icu-68-true-false.diff             | 141 +++++++++++++++++++++
 2 files changed, 144 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/www/webkit2-gtk-devel/Portfile b/www/webkit2-gtk-devel/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index c2daf1789de..285c76d4b96 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/www/webkit2-gtk-devel/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/www/webkit2-gtk-devel/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -114,6 +114,9 @@ patchfiles-append    patch-bool_narrowed.diff
</span> # Fixes dlopen errors in apps using webkit2gtk introspection
 patchfiles-append    patch-webkit2gtk-specify-installed-dylibs.diff
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# Backport https://github.com/WebKit/WebKit/commit/b83958928838b8a997c12a8de06f89377df0a903
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append    patch-icu-68-true-false.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # Reduce compilation warnings
 configure.cppflags-append \
     -Wno-deprecated-declarations
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/www/webkit2-gtk-devel/files/patch-icu-68-true-false.diff b/www/webkit2-gtk-devel/files/patch-icu-68-true-false.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..6b9617f239a
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/www/webkit2-gtk-devel/files/patch-icu-68-true-false.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,141 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git Source/WTF/wtf/text/icu/UTextProvider.h Source/WTF/wtf/text/icu/UTextProvider.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index c8f28d6ed3da..3c6fbeab6a5c 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- Source/WTF/wtf/text/icu/UTextProvider.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Source/WTF/wtf/text/icu/UTextProvider.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -79,12 +79,12 @@ inline bool uTextAccessInChunkOrOutOfRange(UText* text, int64_t nativeIndex, int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             // Ensure chunk offset is well formed if computed offset exceeds int32_t range.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             ASSERT(offset < std::numeric_limits<int32_t>::max());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             text->chunkOffset = offset < std::numeric_limits<int32_t>::max() ? static_cast<int32_t>(offset) : 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            isAccessible = TRUE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            isAccessible = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             return true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if (nativeIndex >= nativeLength && text->chunkNativeLimit == nativeLength) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             text->chunkOffset = text->chunkLength;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            isAccessible = FALSE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            isAccessible = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             return true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -93,12 +93,12 @@ inline bool uTextAccessInChunkOrOutOfRange(UText* text, int64_t nativeIndex, int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             // Ensure chunk offset is well formed if computed offset exceeds int32_t range.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             ASSERT(offset < std::numeric_limits<int32_t>::max());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             text->chunkOffset = offset < std::numeric_limits<int32_t>::max() ? static_cast<int32_t>(offset) : 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            isAccessible = TRUE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            isAccessible = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             return true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if (nativeIndex <= 0 && !text->chunkNativeStart) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             text->chunkOffset = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            isAccessible = FALSE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            isAccessible = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             return true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git Source/WTF/wtf/text/icu/UTextProviderLatin1.cpp Source/WTF/wtf/text/icu/UTextProviderLatin1.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 0a646b7f390d..49980f95ba79 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- Source/WTF/wtf/text/icu/UTextProviderLatin1.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Source/WTF/wtf/text/icu/UTextProviderLatin1.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -100,23 +100,23 @@ static UBool uTextLatin1Access(UText* uText, int64_t index, UBool forward)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if (index < uText->chunkNativeLimit && index >= uText->chunkNativeStart) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             // Already inside the buffer. Set the new offset.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             uText->chunkOffset = static_cast<int32_t>(index - uText->chunkNativeStart);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            return TRUE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            return true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if (index >= length && uText->chunkNativeLimit == length) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             // Off the end of the buffer, but we can't get it.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             uText->chunkOffset = static_cast<int32_t>(index - uText->chunkNativeStart);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            return FALSE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            return false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if (index <= uText->chunkNativeLimit && index > uText->chunkNativeStart) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             // Already inside the buffer. Set the new offset.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             uText->chunkOffset = static_cast<int32_t>(index - uText->chunkNativeStart);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            return TRUE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            return true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if (!index && !uText->chunkNativeStart) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             // Already at the beginning; can't go any farther.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             uText->chunkOffset = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            return FALSE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            return false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -144,7 +144,7 @@ static UBool uTextLatin1Access(UText* uText, int64_t index, UBool forward)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     uText->nativeIndexingLimit = uText->chunkLength;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    return TRUE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static int32_t uTextLatin1Extract(UText* uText, int64_t start, int64_t limit, UChar* dest, int32_t destCapacity, UErrorCode* status)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -337,7 +337,7 @@ static int64_t uTextLatin1ContextAwareNativeLength(UText* text)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static UBool uTextLatin1ContextAwareAccess(UText* text, int64_t nativeIndex, UBool forward)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (!text->context)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        return FALSE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        return false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     int64_t nativeLength = uTextLatin1ContextAwareNativeLength(text);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     UBool isAccessible;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (uTextAccessInChunkOrOutOfRange(text, nativeIndex, nativeLength, forward, isAccessible))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -357,7 +357,7 @@ static UBool uTextLatin1ContextAwareAccess(UText* text, int64_t nativeIndex, UBo
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         ASSERT(newContext == UTextProviderContext::PriorContext);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         textLatin1ContextAwareSwitchToPriorContext(text, nativeIndex, nativeLength, forward);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    return TRUE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static int32_t uTextLatin1ContextAwareExtract(UText*, int64_t, int64_t, UChar*, int32_t, UErrorCode* errorCode)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git Source/WTF/wtf/text/icu/UTextProviderUTF16.cpp Source/WTF/wtf/text/icu/UTextProviderUTF16.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 69c8d091bd62..9c3fa709200a 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- Source/WTF/wtf/text/icu/UTextProviderUTF16.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Source/WTF/wtf/text/icu/UTextProviderUTF16.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -126,7 +126,7 @@ static inline int64_t uTextUTF16ContextAwareNativeLength(UText* text)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static UBool uTextUTF16ContextAwareAccess(UText* text, int64_t nativeIndex, UBool forward)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (!text->context)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        return FALSE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        return false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     int64_t nativeLength = uTextUTF16ContextAwareNativeLength(text);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     UBool isAccessible;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (uTextAccessInChunkOrOutOfRange(text, nativeIndex, nativeLength, forward, isAccessible))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -146,7 +146,7 @@ static UBool uTextUTF16ContextAwareAccess(UText* text, int64_t nativeIndex, UBoo
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         ASSERT(newContext == UTextProviderContext::PriorContext);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         textUTF16ContextAwareSwitchToPriorContext(text, nativeIndex, nativeLength, forward);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    return TRUE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static int32_t uTextUTF16ContextAwareExtract(UText*, int64_t, int64_t, UChar*, int32_t, UErrorCode* errorCode)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git Source/WebCore/platform/text/TextCodecICU.cpp Source/WebCore/platform/text/TextCodecICU.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 19b41eb7125f..2f7d1930b8d7 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- Source/WebCore/platform/text/TextCodecICU.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Source/WebCore/platform/text/TextCodecICU.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -194,7 +194,7 @@ void TextCodecICU::createICUConverter() const
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     UErrorCode error = U_ZERO_ERROR;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     m_converter = ICUConverterPtr { ucnv_open(m_canonicalConverterName, &error), ucnv_close };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (m_converter)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        ucnv_setFallback(m_converter.get(), TRUE);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        ucnv_setFallback(m_converter.get(), true);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int TextCodecICU::decodeToBuffer(UChar* target, UChar* targetLimit, const char*& source, const char* sourceLimit, int32_t* offsets, bool flush, UErrorCode& error)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git Source/WebKit/UIProcess/CoordinatedGraphics/DrawingAreaProxyCoordinatedGraphics.cpp Source/WebKit/UIProcess/CoordinatedGraphics/DrawingAreaProxyCoordinatedGraphics.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 61e3f6050d7f..5a51b9ec1d68 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- Source/WebKit/UIProcess/CoordinatedGraphics/DrawingAreaProxyCoordinatedGraphics.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Source/WebKit/UIProcess/CoordinatedGraphics/DrawingAreaProxyCoordinatedGraphics.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -402,7 +402,7 @@ DrawingAreaProxyCoordinatedGraphics::DrawingMonitor::~DrawingMonitor()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int DrawingAreaProxyCoordinatedGraphics::DrawingMonitor::webViewDrawCallback(DrawingAreaProxyCoordinatedGraphics::DrawingMonitor* monitor)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     monitor->didDraw();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    return FALSE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void DrawingAreaProxyCoordinatedGraphics::DrawingMonitor::start(WTF::Function<void(CallbackBase::Error)>&& callback)
</span></pre><pre style='margin:0'>

</pre>