mcst-linux-kernel/patches-2024.06.26/webkitgtk-2.40.0/0011-Workaround-bug-152164-...

50 lines
1.4 KiB
Diff

--- old/Source/WebCore/xml/XSLStyleSheetLibxslt.cpp 2023-08-31 00:29:36.331519842 +0300
+++ new/Source/WebCore/xml/XSLStyleSheetLibxslt.cpp 2023-08-31 00:38:03.356309522 +0300
@@ -68,17 +68,27 @@
XSLStyleSheet::~XSLStyleSheet()
{
clearXSLStylesheetDocument();
-
+#if defined(__LCC__) && (__LCC__ == 126)
+ for (auto& new_import : m_children) {
+ ASSERT(new_import->parentStyleSheet() == this);
+ new_import->setParentStyleSheet(nullptr);
+#else
for (auto& import : m_children) {
ASSERT(import->parentStyleSheet() == this);
import->setParentStyleSheet(nullptr);
+#endif
}
}
bool XSLStyleSheet::isLoading() const
{
+#if defined(__LCC__) && (__LCC__ == 126)
+ for (auto& new_import : m_children) {
+ if (new_import->isLoading())
+#else
for (auto& import : m_children) {
if (import->isLoading())
+#endif
return true;
}
return false;
@@ -105,10 +115,17 @@
{
clearXSLStylesheetDocument();
+#if defined(__LCC__) && (__LCC__ == 126)
+ for (auto& new_import : m_children) {
+ if (new_import->styleSheet())
+ new_import->styleSheet()->clearDocuments();
+ }
+#else
for (auto& import : m_children) {
if (import->styleSheet())
import->styleSheet()->clearDocuments();
}
+#endif
}
void XSLStyleSheet::clearXSLStylesheetDocument()