summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.qmake.conf2
-rw-r--r--dist/changes-5.9.971
-rw-r--r--examples/webenginewidgets/simplebrowser/webpage.cpp1
m---------src/3rdparty0
-rw-r--r--src/core/delegated_frame_node.cpp25
-rw-r--r--src/core/render_widget_host_view_qt.cpp3
6 files changed, 96 insertions, 6 deletions
diff --git a/.qmake.conf b/.qmake.conf
index 84b340824..977b6f752 100644
--- a/.qmake.conf
+++ b/.qmake.conf
@@ -5,4 +5,4 @@ QTWEBENGINE_OUT_ROOT = $$shadowed($$PWD)
load(qt_build_config)
CONFIG += warning_clean
-MODULE_VERSION = 5.9.8
+MODULE_VERSION = 5.9.9
diff --git a/dist/changes-5.9.9 b/dist/changes-5.9.9
new file mode 100644
index 000000000..676cbb372
--- /dev/null
+++ b/dist/changes-5.9.9
@@ -0,0 +1,71 @@
+Qt 5.9.9 is a bug-fix release. It maintains both forward and backward
+compatibility (source and binary) with Qt 5.9.0 through 5.9.8.
+
+For more details, refer to the online documentation included in this
+distribution. The documentation is also available online:
+
+https://doc.qt.io/qt-5/index.html
+
+The Qt version 5.9 series is binary compatible with the 5.8.x series.
+Applications compiled for 5.8 will continue to run with 5.9.
+
+Some of the changes listed in this file include issue tracking numbers
+corresponding to tasks in the Qt Bug Tracker:
+
+https://bugreports.qt.io/
+
+Each of these identifiers can be entered in the bug tracker to obtain more
+information about a particular change.
+
+****************************************************************************
+* Qt 5.9.9 Changes *
+****************************************************************************
+
+Chromium
+--------
+
+ - Security fixes from Chromium up to version 78.0.3904.108
+ * CVE-2019-5793
+ * CVE-2019-5808
+ * CVE-2019-5814
+ * CVE-2019-5815
+ * CVE-2019-5818
+ * CVE-2019-5819
+ * CVE-2019-5826
+ * CVE-2019-5827
+ * CVE-2019-5829
+ * CVE-2019-5832
+ * CVE-2019-5839
+ * CVE-2019-5842
+ * CVE-2019-5854
+ * CVE-2019-5870
+ * CVE-2019-5876
+ * CVE-2019-13659
+ * CVE-2019-13692
+ * CVE-2019-13697
+ * CVE-2019-15903
+ * Security issue 906652
+ * Security issue 906379
+ * Security issue 913212
+ * Security issue 916874
+ * Security issue 917608
+ * Security issue 919572
+ * Security issue 924905
+ * Security issue 933743
+ * Security issue 940205
+ * Security issue 1018406
+
+Platform Specific Changes
+-------------------------
+
+ - macOS
+ * [QTBUG-78997] - Fix compiling on Xcode 11.
+ * [QTBUG-78997] - Fix use of deprecated method for scanning wifi networks
+
+ - Windows
+ * [QTBUG-75212] - Fix building GN with VS 2019
+
+ - Linux
+ * Fix build with recent linux kernel
+ * [QTBUG-77037] - Fix building with pulseaudio 13
+
diff --git a/examples/webenginewidgets/simplebrowser/webpage.cpp b/examples/webenginewidgets/simplebrowser/webpage.cpp
index 3b78b8618..903956419 100644
--- a/examples/webenginewidgets/simplebrowser/webpage.cpp
+++ b/examples/webenginewidgets/simplebrowser/webpage.cpp
@@ -56,6 +56,7 @@
#include "webview.h"
#include <QAuthenticator>
#include <QMessageBox>
+#include <QStyle>
WebPage::WebPage(QWebEngineProfile *profile, QObject *parent)
: QWebEnginePage(profile, parent)
diff --git a/src/3rdparty b/src/3rdparty
-Subproject 9bab2acc924790b0a01a08e76f9216acc2d6528
+Subproject 0ee076e7a6507637efad493edc367fd63b7e7fb
diff --git a/src/core/delegated_frame_node.cpp b/src/core/delegated_frame_node.cpp
index 8ed88ea5d..2d8d3df8c 100644
--- a/src/core/delegated_frame_node.cpp
+++ b/src/core/delegated_frame_node.cpp
@@ -120,6 +120,12 @@
#define GL_LINE_LOOP 0x0002
#endif
+#ifndef QT_NO_OPENGL
+QT_BEGIN_NAMESPACE
+Q_GUI_EXPORT QOpenGLContext *qt_gl_global_share_context();
+QT_END_NAMESPACE
+#endif
+
namespace QtWebEngineCore {
#ifndef QT_NO_OPENGL
class MailboxTexture : public QSGTexture, protected QOpenGLFunctions {
@@ -243,8 +249,14 @@ public:
QSGNode *) override
{
QSGTextureNode *textureNode = static_cast<QSGTextureNode*>(*m_nodeIterator++);
- if (textureNode->texture() != texture)
+ if (textureNode->texture() != texture) {
+ // Chromium sometimes uses textures that doesn't completely fit
+ // in which case the geometry needs to be recalculated even if
+ // rect and src-rect matches.
+ if (textureNode->texture()->textureSize() != texture->textureSize())
+ textureNode->markDirty(QSGImageNode::DirtyGeometry);
textureNode->setTexture(texture);
+ }
if (textureNode->textureCoordinatesTransform() != texCoordTransForm)
textureNode->setTextureCoordinatesTransform(texCoordTransForm);
if (textureNode->rect() != rect)
@@ -258,15 +270,20 @@ public:
QSGTexture::Filtering filtering, QSGNode *) override
{
QSGTextureNode *textureNode = static_cast<QSGTextureNode*>(*m_nodeIterator++);
-
+ if (textureNode->texture() != texture) {
+ // Chromium sometimes uses textures that doesn't completely fit
+ // in which case the geometry needs to be recalculated even if
+ // rect and src-rect matches.
+ if (textureNode->texture()->textureSize() != texture->textureSize())
+ textureNode->markDirty(QSGImageNode::DirtyGeometry);
+ textureNode->setTexture(texture);
+ }
if (textureNode->rect() != rect)
textureNode->setRect(rect);
if (textureNode->sourceRect() != sourceRect)
textureNode->setSourceRect(sourceRect);
if (textureNode->filtering() != filtering)
textureNode->setFiltering(filtering);
- if (textureNode->texture() != texture)
- textureNode->setTexture(texture);
}
void setupSolidColorNode(const QRect &rect, const QColor &color, QSGNode *) override
{
diff --git a/src/core/render_widget_host_view_qt.cpp b/src/core/render_widget_host_view_qt.cpp
index ef2834041..4b00fbc17 100644
--- a/src/core/render_widget_host_view_qt.cpp
+++ b/src/core/render_widget_host_view_qt.cpp
@@ -637,7 +637,8 @@ void RenderWidgetHostViewQt::Destroy()
void RenderWidgetHostViewQt::SetTooltipText(const base::string16 &tooltip_text)
{
- m_adapterClient->setToolTip(toQt(tooltip_text));
+ if (m_adapterClient)
+ m_adapterClient->setToolTip(toQt(tooltip_text));
}
void RenderWidgetHostViewQt::CopyFromCompositingSurface(const gfx::Rect& src_subrect, const gfx::Size& dst_size, const content::ReadbackRequestCallback& callback, const SkColorType color_type)