aboutsummaryrefslogtreecommitdiff
path: root/converters/wkhtmltopdf
diff options
context:
space:
mode:
authorKurt Jaeger <pi@FreeBSD.org>2020-07-23 01:34:03 +0000
committerKurt Jaeger <pi@FreeBSD.org>2020-07-23 01:34:03 +0000
commitbb3c215827767bd998b157da982477f9274d1b14 (patch)
tree4f31d3ef620fb9b33cf3bc73fd11880ebb3476fe /converters/wkhtmltopdf
parentc2e73c3fbb7fe4d58b8cb4a4d8734bb12d6a07e5 (diff)
downloadports-bb3c215827767bd998b157da982477f9274d1b14.tar.gz
ports-bb3c215827767bd998b157da982477f9274d1b14.zip
converters/wkhtmltopdf: update 0.12.5 -> 0.12.6, fix build
- remove dependency on www/qt5-webkit - BREAKING CHANGE: block local filesystem access by default - pet portlint PR: 243349, 248039, 247556, 241397 Submitted by: r.quakkelaar@quaras.nl Reported by: ohartmann@walstatt.org, rs@bytecamp.net Reviewed by: jonc@chen.org.nz, jhibbits Relnotes: https://github.com/wkhtmltopdf/wkhtmltopdf/releases/tag/0.12.6
Notes
Notes: svn path=/head/; revision=542904
Diffstat (limited to 'converters/wkhtmltopdf')
-rw-r--r--converters/wkhtmltopdf/Makefile8
-rw-r--r--converters/wkhtmltopdf/distinfo6
-rw-r--r--converters/wkhtmltopdf/files/patch-config.tests_unix_compile.test4
-rw-r--r--converters/wkhtmltopdf/files/patch-configure11
-rw-r--r--converters/wkhtmltopdf/files/patch-libcxx374
-rw-r--r--converters/wkhtmltopdf/files/patch-mkspecs_common_gcc-base.conf11
-rw-r--r--converters/wkhtmltopdf/files/patch-src__3rdparty__webkit__Source__JavaScriptCore__runtime__JSValueInlineMethods.h8
-rw-r--r--converters/wkhtmltopdf/files/patch-src__3rdparty__webkit__Source__JavaScriptCore__wtf__Atomics.h17
-rw-r--r--converters/wkhtmltopdf/files/patch-src__3rdparty__webkit__Source__WebKit__qt__QtWebKit.pro6
-rw-r--r--converters/wkhtmltopdf/pkg-plist2
10 files changed, 220 insertions, 227 deletions
diff --git a/converters/wkhtmltopdf/Makefile b/converters/wkhtmltopdf/Makefile
index cad62e09f9c6..358a2bcec563 100644
--- a/converters/wkhtmltopdf/Makefile
+++ b/converters/wkhtmltopdf/Makefile
@@ -2,8 +2,7 @@
# $FreeBSD$
PORTNAME= wkhtmltopdf
-PORTVERSION= 0.12.5
-PORTREVISION= 5
+PORTVERSION= 0.12.6
CATEGORIES= converters
MAINTAINER= pi@FreeBSD.org
@@ -20,17 +19,16 @@ BROKEN_mips64= fails to link: undefined reference to __sync_add_and_fetch_4
RUN_DEPENDS= webfonts>=0:x11-fonts/webfonts
LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \
libfreetype.so:print/freetype2 \
- libpng.so:graphics/png \
- libQt5WebKit.so:www/qt5-webkit
+ libpng.so:graphics/png
USES= compiler:c++11-lang gmake iconv jpeg perl5 pkgconfig ssl xorg
+USE_GCC= 8
USE_XORG= x11 xext xrender
USE_PERL5= build
USE_LDCONFIG= yes
USE_GITHUB= yes
WKQT_TAGNAME= 5db36ec
GH_TUPLE= ${PORTNAME}:qt:${WKQT_TAGNAME}:qt
-USE_CXXSTD= gnu++98
HAS_CONFIGURE= yes
PATCH_WRKSRC= ${WRKSRC}/qt
diff --git a/converters/wkhtmltopdf/distinfo b/converters/wkhtmltopdf/distinfo
index 346dbde14a9a..caeda23b963a 100644
--- a/converters/wkhtmltopdf/distinfo
+++ b/converters/wkhtmltopdf/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1528798989
-SHA256 (wkhtmltopdf-wkhtmltopdf-0.12.5_GH0.tar.gz) = 861d6e61e2f5beb2d8daaade2cd5a85b84065ee9fac0d6d85000d8a7712a4621
-SIZE (wkhtmltopdf-wkhtmltopdf-0.12.5_GH0.tar.gz) = 511181
+TIMESTAMP = 1591904530
+SHA256 (wkhtmltopdf-wkhtmltopdf-0.12.6_GH0.tar.gz) = adcced78492e7366d940c66a1327a85d3ae8c45190f486f545fdaa84cac662f0
+SIZE (wkhtmltopdf-wkhtmltopdf-0.12.6_GH0.tar.gz) = 519045
SHA256 (wkhtmltopdf-qt-5db36ec_GH0.tar.gz) = 2b60944b46a4b0b9cdb9ce0339c3bf8f54c5ff9411cbc3c6a6ad01f88cc578e1
SIZE (wkhtmltopdf-qt-5db36ec_GH0.tar.gz) = 172992377
diff --git a/converters/wkhtmltopdf/files/patch-config.tests_unix_compile.test b/converters/wkhtmltopdf/files/patch-config.tests_unix_compile.test
index 2046425ad53c..87b09cad4bc2 100644
--- a/converters/wkhtmltopdf/files/patch-config.tests_unix_compile.test
+++ b/converters/wkhtmltopdf/files/patch-config.tests_unix_compile.test
@@ -1,6 +1,6 @@
---- config.tests/unix/compile.test.orig
+--- config.tests/unix/compile.test.orig 2018-05-29 06:56:52 UTC
+++ config.tests/unix/compile.test
-@@ -13,7 +13,7 @@
+@@ -13,7 +13,7 @@ DESCRIPTION=$7
shift 7
LFLAGS="$SYSROOT_FLAG"
INCLUDEPATH=""
diff --git a/converters/wkhtmltopdf/files/patch-configure b/converters/wkhtmltopdf/files/patch-configure
new file mode 100644
index 000000000000..dc66464e5d32
--- /dev/null
+++ b/converters/wkhtmltopdf/files/patch-configure
@@ -0,0 +1,11 @@
+--- configure.orig 2018-05-29 06:56:52 UTC
++++ configure
+@@ -7754,7 +7754,7 @@ case "$XPLATFORM" in
+ *-g++*)
+ # Check gcc's version
+ case "$(${QMAKE_CONF_COMPILER} -dumpversion)" in
+- 8*|7*|6*|5*|4*|3.4*)
++ 11*|10*|9*|8*|7*|6*|5*|4*|3.4*)
+ ;;
+ 3.3*)
+ canBuildWebKit="no"
diff --git a/converters/wkhtmltopdf/files/patch-libcxx b/converters/wkhtmltopdf/files/patch-libcxx
index ab695126e9fc..b253c18762f3 100644
--- a/converters/wkhtmltopdf/files/patch-libcxx
+++ b/converters/wkhtmltopdf/files/patch-libcxx
@@ -202,27 +202,25 @@ Reviewed by Anders Carlsson.
libc++ provides std::nullptr emulation, so we don't have to.
------------------------------------------------------------------------
---- src/3rdparty/webkit/Source/JavaScriptCore/wtf/NullPtr.h
+--- src/3rdparty/webkit/Source/JavaScriptCore/wtf/NullPtr.h.orig 2018-05-29 06:56:52 UTC
+++ src/3rdparty/webkit/Source/JavaScriptCore/wtf/NullPtr.h
-@@ -35,10 +35,14 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+@@ -35,9 +35,13 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH D
#define __has_feature(feature) 0
#endif
--#if __has_feature(cxx_nullptr) || (GCC_VERSION_AT_LEAST(4, 6, 0) && defined(__GXX_EXPERIMENTAL_CXX0X__)) || (defined(_MSC_VER) && _MSC_VER >= 1600 && !COMPILER(INTEL)) || defined(_LIBCPP_VERSION)
+#include <ciso646>
+
-+#if __has_feature(cxx_nullptr) || (GCC_VERSION_AT_LEAST(4, 6, 0) && defined(__GXX_EXPERIMENTAL_CXX0X__)) || (defined(_MSC_VER) && _MSC_VER >= 1600 && !COMPILER(INTEL)) || defined(_LIBCPP_VERSION)
+ #if __has_feature(cxx_nullptr) || (GCC_VERSION_AT_LEAST(4, 6, 0) && defined(__GXX_EXPERIMENTAL_CXX0X__)) || (defined(_MSC_VER) && _MSC_VER >= 1600 && !COMPILER(INTEL)) || defined(_LIBCPP_VERSION)
#define HAVE_NULLPTR 1
-
-+#include <cstddef>
+
++#include <cstddef>
+
#else
- namespace std {
---- src/3rdparty/webkit/Source/WebCore/dom/XMLDocumentParserQt.cpp (revision 86528)
-+++ src/3rdparty/webkit/Source/WebCore/dom/XMLDocumentParserQt.cpp (revision 86529)
-@@ -215,7 +215,7 @@
+--- src/3rdparty/webkit/Source/WebCore/dom/XMLDocumentParserQt.cpp.orig 2018-05-29 06:56:52 UTC
++++ src/3rdparty/webkit/Source/WebCore/dom/XMLDocumentParserQt.cpp
+@@ -215,7 +215,7 @@ void XMLDocumentParser::doEnd()
{
#if ENABLE(XSLT)
if (m_sawXSLTransform) {
@@ -231,7 +229,7 @@ libc++ provides std::nullptr emulation, so we don't have to.
document()->setParsing(false); // Make the doc think it's done, so it will apply xsl sheets.
document()->styleSelectorChanged(RecalcStyleImmediately);
document()->setParsing(true);
---- src/3rdparty/webkit/Source/WebCore/loader/icon/IconRecord.h
+--- src/3rdparty/webkit/Source/WebCore/loader/icon/IconRecord.h.orig 2018-05-29 06:56:52 UTC
+++ src/3rdparty/webkit/Source/WebCore/loader/icon/IconRecord.h
@@ -38,7 +38,7 @@
#include <wtf/OwnPtr.h>
@@ -242,7 +240,7 @@ libc++ provides std::nullptr emulation, so we don't have to.
#include <sys/types.h> // For time_t structure.
#endif
---- src/3rdparty/webkit/Source/WebCore/page/Page.h
+--- src/3rdparty/webkit/Source/WebCore/page/Page.h.orig 2018-05-29 06:56:52 UTC
+++ src/3rdparty/webkit/Source/WebCore/page/Page.h
@@ -29,7 +29,7 @@
#include <wtf/HashSet.h>
@@ -253,7 +251,7 @@ libc++ provides std::nullptr emulation, so we don't have to.
#include <sys/time.h> // For time_t structure.
#endif
---- src/3rdparty/webkit/Source/WebCore/platform/network/ResourceResponseBase.h
+--- src/3rdparty/webkit/Source/WebCore/platform/network/ResourceResponseBase.h.orig 2018-05-29 06:56:52 UTC
+++ src/3rdparty/webkit/Source/WebCore/platform/network/ResourceResponseBase.h
@@ -35,7 +35,7 @@
#include <wtf/PassOwnPtr.h>
@@ -264,9 +262,9 @@ libc++ provides std::nullptr emulation, so we don't have to.
#include <sys/time.h> // For time_t structure.
#endif
---- src/3rdparty/webkit/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp (revision 86529)
-+++ src/3rdparty/webkit/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp (revision 86530)
-@@ -285,7 +285,7 @@
+--- src/3rdparty/webkit/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp.orig 2018-05-29 06:56:52 UTC
++++ src/3rdparty/webkit/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp
+@@ -285,7 +285,7 @@ void QNetworkReplyWrapper::receiveMetaData()
Q_ASSERT(!m_sniffer);
@@ -275,7 +273,7 @@ libc++ provides std::nullptr emulation, so we don't have to.
if (m_sniffer->isFinished()) {
receiveSniffedMIMEType();
-@@ -666,7 +666,7 @@
+@@ -666,7 +666,7 @@ void QNetworkReplyHandler::start()
if (!reply)
return;
@@ -284,10 +282,9 @@ libc++ provides std::nullptr emulation, so we don't have to.
if (m_loadType == SynchronousLoad) {
m_replyWrapper->synchronousLoad();
-===================================================================
---- src/3rdparty/webkit/Source/WebCore/platform/text/qt/TextCodecQt.cpp (revision 86530)
-+++ src/3rdparty/webkit/Source/WebCore/platform/text/qt/TextCodecQt.cpp (revision 86531)
-@@ -64,7 +64,7 @@
+--- src/3rdparty/webkit/Source/WebCore/platform/text/qt/TextCodecQt.cpp.orig 2018-05-29 06:56:52 UTC
++++ src/3rdparty/webkit/Source/WebCore/platform/text/qt/TextCodecQt.cpp
+@@ -64,7 +64,7 @@ void TextCodecQt::registerEncodingNames(EncodingNameRe
static PassOwnPtr<TextCodec> newTextCodecQt(const TextEncoding& encoding, const void*)
{
@@ -296,10 +293,20 @@ libc++ provides std::nullptr emulation, so we don't have to.
}
void TextCodecQt::registerCodecs(TextCodecRegistrar registrar)
-
---- src/3rdparty/webkit/Source/WebKit/qt/Api/qgraphicswebview.cpp (revision 86532)
-+++ src/3rdparty/webkit/Source/WebKit/qt/Api/qgraphicswebview.cpp (revision 86533)
-@@ -504,7 +504,7 @@
+--- src/3rdparty/webkit/Source/WebCore/plugins/qt/PluginViewQt.cpp.orig 2018-05-29 06:56:52 UTC
++++ src/3rdparty/webkit/Source/WebCore/plugins/qt/PluginViewQt.cpp
+@@ -950,7 +950,7 @@ bool PluginView::platformStart()
+
+ #if USE(ACCELERATED_COMPOSITING) && !USE(TEXTURE_MAPPER)
+ if (shouldUseAcceleratedCompositing()) {
+- m_platformLayer = new PluginGraphicsLayerQt(this);
++ m_platformLayer = adoptPtr(new PluginGraphicsLayerQt(this));
+ // Trigger layer computation in RenderLayerCompositor
+ m_element->setNeedsStyleRecalc(SyntheticStyleChange);
+ }
+--- src/3rdparty/webkit/Source/WebKit/qt/Api/qgraphicswebview.cpp.orig 2018-05-29 06:56:52 UTC
++++ src/3rdparty/webkit/Source/WebKit/qt/Api/qgraphicswebview.cpp
+@@ -504,7 +504,7 @@ void QGraphicsWebView::setPage(QWebPage* page)
if (!d->page)
return;
@@ -308,9 +315,9 @@ libc++ provides std::nullptr emulation, so we don't have to.
if (d->overlay())
d->overlay()->prepareGraphicsItemGeometryChange();
---- src/3rdparty/webkit/Source/WebKit/qt/Api/qwebpage.cpp (revision 86532)
-+++ src/3rdparty/webkit/Source/WebKit/qt/Api/qwebpage.cpp (revision 86550)
-@@ -1319,7 +1319,7 @@
+--- src/3rdparty/webkit/Source/WebKit/qt/Api/qwebpage.cpp.orig 2018-05-29 06:56:52 UTC
++++ src/3rdparty/webkit/Source/WebKit/qt/Api/qwebpage.cpp
+@@ -1343,7 +1343,7 @@ void QWebPagePrivate::adjustPointForClicking(QMouseEve
void QWebPagePrivate::adjustPointForClicking(QGraphicsSceneMouseEvent* ev)
{
QtPlatformPlugin platformPlugin;
@@ -319,7 +326,7 @@ libc++ provides std::nullptr emulation, so we don't have to.
if (!touchModifier)
return;
-@@ -1328,8 +1328,7 @@
+@@ -1352,8 +1352,7 @@ void QWebPagePrivate::adjustPointForClicking(QGraphics
unsigned bottomPadding = touchModifier->hitTestPaddingForTouch(QWebTouchModifier::Down);
unsigned leftPadding = touchModifier->hitTestPaddingForTouch(QWebTouchModifier::Left);
@@ -329,7 +336,7 @@ libc++ provides std::nullptr emulation, so we don't have to.
if (!topPadding && !rightPadding && !bottomPadding && !leftPadding)
return;
-@@ -2044,7 +2044,7 @@
+@@ -2068,7 +2067,7 @@ void QWebPage::setView(QWidget* view)
}
if (view)
@@ -338,68 +345,9 @@ libc++ provides std::nullptr emulation, so we don't have to.
}
/*!
---- src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/PopupMenuQt.h (revision 86536)
-+++ src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/PopupMenuQt.h (revision 86550)
-@@ -22,6 +22,8 @@
-
- #include "PopupMenu.h"
- #include <QObject>
-+#include <wtf/OwnPtr.h>
-+#include <wtf/PassOwnPtr.h>
-
- class QWebSelectData;
- class QWebSelectMethod;
-@@ -49,8 +51,8 @@
-
- private:
- PopupMenuClient* m_popupClient;
-- QWebSelectMethod* m_popup;
-- QWebSelectData* m_selectData;
-+ OwnPtr<QWebSelectMethod> m_popup;
-+ OwnPtr<QWebSelectData> m_selectData;
- const ChromeClientQt* m_chromeClient;
- };
-
---- src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/QtPlatformPlugin.h (revision 86536)
-+++ src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/QtPlatformPlugin.h (revision 86550)
-@@ -22,6 +22,7 @@
- #define QtPlatformPlugin_h
-
- #include <QPluginLoader>
-+#include <wtf/PassOwnPtr.h>
-
- class QWebSelectMethod;
- class QWebKitPlatformPlugin;
-@@ -37,15 +38,20 @@
-
- class QtPlatformPlugin {
- public:
-- QtPlatformPlugin() : m_loaded(false), m_plugin(0) {}
-+ QtPlatformPlugin()
-+ : m_loaded(false)
-+ , m_plugin(0)
-+ {
-+ }
-+
- ~QtPlatformPlugin();
-
-- QWebSelectMethod* createSelectInputMethod();
-- QWebNotificationPresenter* createNotificationPresenter();
-- QWebHapticFeedbackPlayer* createHapticFeedbackPlayer();
-- QWebTouchModifier* createTouchModifier();
-+ PassOwnPtr<QWebSelectMethod> createSelectInputMethod();
-+ PassOwnPtr<QWebNotificationPresenter> createNotificationPresenter();
-+ PassOwnPtr<QWebHapticFeedbackPlayer> createHapticFeedbackPlayer();
-+ PassOwnPtr<QWebTouchModifier> createTouchModifier();
- #if ENABLE(VIDEO) && USE(QT_MULTIMEDIA)
-- QWebFullScreenVideoHandler* createFullScreenVideoHandler();
-+ PassOwnPtr<QWebFullScreenVideoHandler> createFullScreenVideoHandler();
- #endif
-
- QWebKitPlatformPlugin* plugin();
---- src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp (revision 86536)
-+++ src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp (revision 86550)
-@@ -696,18 +696,18 @@
+--- src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp.orig 2018-05-29 06:56:52 UTC
++++ src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp
+@@ -702,18 +702,18 @@ void ChromeClientQt::exitFullscreenForNode(Node* node)
}
#endif
@@ -424,9 +372,95 @@ libc++ provides std::nullptr emulation, so we don't have to.
#endif
}
---- src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/PopupMenuQt.cpp (revision 86536)
-+++ src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/PopupMenuQt.cpp (revision 86550)
-@@ -82,8 +82,6 @@
+--- src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.h.orig 2018-05-29 06:56:52 UTC
++++ src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.h
+@@ -34,6 +34,7 @@
+ #include "KURL.h"
+ #include "PlatformString.h"
+ #include "QtPlatformPlugin.h"
++#include <wtf/PassOwnPtr.h>
+ #include <wtf/RefCounted.h>
+
+ QT_BEGIN_NAMESPACE
+@@ -190,7 +191,7 @@ class ChromeClientQt : public ChromeClient { (public)
+ virtual PassRefPtr<SearchPopupMenu> createSearchPopupMenu(PopupMenuClient*) const;
+ virtual void populateVisitedLinks();
+
+- QWebSelectMethod* createSelectPopup() const;
++ PassOwnPtr<QWebSelectMethod> createSelectPopup() const;
+
+ virtual void dispatchViewportDataDidChange(const ViewportArguments&) const;
+
+--- src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/FullScreenVideoQt.cpp.orig 2018-05-29 06:56:52 UTC
++++ src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/FullScreenVideoQt.cpp
+@@ -140,7 +140,7 @@ FullScreenVideoQt::FullScreenVideoQt(ChromeClientQt* c
+ Q_ASSERT(m_chromeClient);
+
+ #if USE(QT_MULTIMEDIA)
+- m_FullScreenVideoHandler = m_chromeClient->m_platformPlugin.createFullScreenVideoHandler();
++ m_FullScreenVideoHandler = m_chromeClient->m_platformPlugin.createFullScreenVideoHandler().leakPtr();
+ if (!m_FullScreenVideoHandler)
+ m_FullScreenVideoHandler = new DefaultFullScreenVideoHandler;
+
+--- src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/InspectorClientQt.cpp.orig 2018-05-29 06:56:52 UTC
++++ src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/InspectorClientQt.cpp
+@@ -203,8 +203,9 @@ void InspectorClientQt::inspectorDestroyed()
+ void InspectorClientQt::openInspectorFrontend(WebCore::InspectorController* inspectorController)
+ {
+ #if ENABLE(INSPECTOR)
+- QWebView* inspectorView = new QWebView;
+- InspectorClientWebPage* inspectorPage = new InspectorClientWebPage(inspectorView);
++ OwnPtr<QWebView> inspectorView = adoptPtr(new QWebView);
++ // FIXME: Where does inspectorPage get deleted?
++ InspectorClientWebPage* inspectorPage = new InspectorClientWebPage(inspectorView.get());
+ inspectorView->setPage(inspectorPage);
+
+ QWebInspector* inspector = m_inspectedWebPage->d->getOrCreateInspector();
+@@ -229,11 +230,14 @@ void InspectorClientQt::openInspectorFrontend(WebCore:
+ inspectorPage->setProperty("_q_inspectorJavaScriptWindowObjects", inspectorJavaScriptWindowObjects);
+ #endif
+ inspectorView->page()->mainFrame()->load(inspectorUrl);
+- m_inspectedWebPage->d->inspectorFrontend = inspectorView;
+- inspector->d->setFrontend(inspectorView);
++ m_inspectedWebPage->d->inspectorFrontend = inspectorView.get();
++ inspector->d->setFrontend(inspectorView.get());
+
+- m_frontendClient = new InspectorFrontendClientQt(m_inspectedWebPage, inspectorView, this);
+- inspectorView->page()->d->page->inspectorController()->setInspectorFrontendClient(m_frontendClient);
++ // Is 'controller' the same object as 'inspectorController' (which appears to be unused)?
++ InspectorController* controller = inspectorView->page()->d->page->inspectorController();
++ OwnPtr<InspectorFrontendClientQt> frontendClient = adoptPtr(new InspectorFrontendClientQt(m_inspectedWebPage, inspectorView.release(), this));
++ m_frontendClient = frontendClient.get();
++ controller->setInspectorFrontendClient(frontendClient.release());
+ m_frontendWebPage = inspectorPage;
+ #endif
+ }
+@@ -297,7 +301,7 @@ bool InspectorClientQt::sendMessageToFrontend(const St
+
+ #if ENABLE(INSPECTOR)
+ InspectorFrontendClientQt::InspectorFrontendClientQt(QWebPage* inspectedWebPage, PassOwnPtr<QWebView> inspectorView, InspectorClientQt* inspectorClient)
+- : InspectorFrontendClientLocal(inspectedWebPage->d->page->inspectorController(), inspectorView->page()->d->page, new InspectorFrontendSettingsQt())
++ : InspectorFrontendClientLocal(inspectedWebPage->d->page->inspectorController(), inspectorView->page()->d->page, adoptPtr(new InspectorFrontendSettingsQt()))
+ , m_inspectedWebPage(inspectedWebPage)
+ , m_inspectorView(inspectorView)
+ , m_destroyingInspectorView(false)
+--- src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/NotificationPresenterClientQt.cpp.orig 2018-05-29 06:56:52 UTC
++++ src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/NotificationPresenterClientQt.cpp
+@@ -211,9 +211,9 @@ void NotificationPresenterClientQt::displayNotificatio
+ QPixmap pixmap;
+ if (bytes.length() && pixmap.loadFromData(bytes)) {
+ QIcon icon(pixmap);
+- wrapper->m_notificationIcon = new QSystemTrayIcon(icon);
++ wrapper->m_notificationIcon = adoptPtr(new QSystemTrayIcon(icon));
+ } else
+- wrapper->m_notificationIcon = new QSystemTrayIcon();
++ wrapper->m_notificationIcon = adoptPtr(new QSystemTrayIcon());
+ #endif
+ }
+
+--- src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/PopupMenuQt.cpp.orig 2018-05-29 06:56:52 UTC
++++ src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/PopupMenuQt.cpp
+@@ -82,16 +82,12 @@ namespace WebCore {
PopupMenuQt::PopupMenuQt(PopupMenuClient* client, const ChromeClientQt* chromeClient)
: m_popupClient(client)
@@ -435,7 +469,6 @@ libc++ provides std::nullptr emulation, so we don't have to.
, m_chromeClient(chromeClient)
{
}
-@@ -90,8 +88,6 @@
PopupMenuQt::~PopupMenuQt()
{
@@ -444,7 +477,7 @@ libc++ provides std::nullptr emulation, so we don't have to.
}
void PopupMenuQt::disconnectClient()
-@@ -107,11 +103,11 @@
+@@ -107,21 +103,19 @@ void PopupMenuQt::show(const IntRect& rect, FrameView*
if (!m_popup) {
m_popup = m_chromeClient->createSelectPopup();
@@ -459,7 +492,6 @@ libc++ provides std::nullptr emulation, so we don't have to.
QRect geometry(rect);
geometry.moveTopLeft(view->contentsToWindow(rect.location()));
fallback->setGeometry(geometry);
-@@ -118,10 +114,8 @@
fallback->setFont(m_popupClient->menuStyle().font().font());
}
@@ -472,20 +504,31 @@ libc++ provides std::nullptr emulation, so we don't have to.
#endif
}
---- src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/FullScreenVideoQt.cpp (revision 86536)
-+++ src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/FullScreenVideoQt.cpp (revision 86550)
-@@ -136,7 +136,7 @@
- Q_ASSERT(m_chromeClient);
+--- src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/PopupMenuQt.h.orig 2018-05-29 06:56:52 UTC
++++ src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/PopupMenuQt.h
+@@ -22,6 +22,8 @@
- #if USE(QT_MULTIMEDIA)
-- m_FullScreenVideoHandler = m_chromeClient->m_platformPlugin.createFullScreenVideoHandler();
-+ m_FullScreenVideoHandler = m_chromeClient->m_platformPlugin.createFullScreenVideoHandler().leakPtr();
- if (!m_FullScreenVideoHandler)
- m_FullScreenVideoHandler = new DefaultFullScreenVideoHandler;
+ #include "PopupMenu.h"
+ #include <QObject>
++#include <wtf/OwnPtr.h>
++#include <wtf/PassOwnPtr.h>
+
+ class QWebSelectData;
+ class QWebSelectMethod;
+@@ -49,8 +51,8 @@ private slots:
+
+ private:
+ PopupMenuClient* m_popupClient;
+- QWebSelectMethod* m_popup;
+- QWebSelectData* m_selectData;
++ OwnPtr<QWebSelectMethod> m_popup;
++ OwnPtr<QWebSelectData> m_selectData;
+ const ChromeClientQt* m_chromeClient;
+ };
---- src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/QtPlatformPlugin.cpp (revision 86536)
-+++ src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/QtPlatformPlugin.cpp (revision 86550)
-@@ -102,36 +102,35 @@
+--- src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/QtPlatformPlugin.cpp.orig 2018-05-29 06:56:52 UTC
++++ src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/QtPlatformPlugin.cpp
+@@ -102,36 +102,35 @@ QWebKitPlatformPlugin* QtPlatformPlugin::plugin()
return m_plugin;
}
@@ -532,89 +575,40 @@ libc++ provides std::nullptr emulation, so we don't have to.
}
#endif
---- src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/InspectorClientQt.cpp (revision 86536)
-+++ src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/InspectorClientQt.cpp (revision 86550)
-@@ -203,8 +203,9 @@
- void InspectorClientQt::openInspectorFrontend(WebCore::InspectorController* inspectorController)
- {
- #if ENABLE(INSPECTOR)
-- QWebView* inspectorView = new QWebView;
-- InspectorClientWebPage* inspectorPage = new InspectorClientWebPage(inspectorView);
-+ OwnPtr<QWebView> inspectorView = adoptPtr(new QWebView);
-+ // FIXME: Where does inspectorPage get deleted?
-+ InspectorClientWebPage* inspectorPage = new InspectorClientWebPage(inspectorView.get());
- inspectorView->setPage(inspectorPage);
-
- QWebInspector* inspector = m_inspectedWebPage->d->getOrCreateInspector();
-@@ -229,11 +230,14 @@
- inspectorPage->setProperty("_q_inspectorJavaScriptWindowObjects", inspectorJavaScriptWindowObjects);
- #endif
- inspectorView->page()->mainFrame()->load(inspectorUrl);
-- m_inspectedWebPage->d->inspectorFrontend = inspectorView;
-- inspector->d->setFrontend(inspectorView);
-+ m_inspectedWebPage->d->inspectorFrontend = inspectorView.get();
-+ inspector->d->setFrontend(inspectorView.get());
-
-- m_frontendClient = new InspectorFrontendClientQt(m_inspectedWebPage, inspectorView, this);
-- inspectorView->page()->d->page->inspectorController()->setInspectorFrontendClient(m_frontendClient);
-+ // Is 'controller' the same object as 'inspectorController' (which appears to be unused)?
-+ InspectorController* controller = inspectorView->page()->d->page->inspectorController();
-+ OwnPtr<InspectorFrontendClientQt> frontendClient = adoptPtr(new InspectorFrontendClientQt(m_inspectedWebPage, inspectorView.release(), this));
-+ m_frontendClient = frontendClient.get();
-+ controller->setInspectorFrontendClient(frontendClient.release());
- m_frontendWebPage = inspectorPage;
- #endif
- }
-@@ -297,7 +301,7 @@
-
- #if ENABLE(INSPECTOR)
- InspectorFrontendClientQt::InspectorFrontendClientQt(QWebPage* inspectedWebPage, PassOwnPtr<QWebView> inspectorView, InspectorClientQt* inspectorClient)
-- : InspectorFrontendClientLocal(inspectedWebPage->d->page->inspectorController(), inspectorView->page()->d->page, new InspectorFrontendSettingsQt())
-+ : InspectorFrontendClientLocal(inspectedWebPage->d->page->inspectorController(), inspectorView->page()->d->page, adoptPtr(new InspectorFrontendSettingsQt()))
- , m_inspectedWebPage(inspectedWebPage)
- , m_inspectorView(inspectorView)
- , m_destroyingInspectorView(false)
---- src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/NotificationPresenterClientQt.cpp (revision 86536)
-+++ src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/NotificationPresenterClientQt.cpp (revision 86550)
-@@ -211,9 +211,9 @@
- QPixmap pixmap;
- if (bytes.length() && pixmap.loadFromData(bytes)) {
- QIcon icon(pixmap);
-- wrapper->m_notificationIcon = new QSystemTrayIcon(icon);
-+ wrapper->m_notificationIcon = adoptPtr(new QSystemTrayIcon(icon));
- } else
-- wrapper->m_notificationIcon = new QSystemTrayIcon();
-+ wrapper->m_notificationIcon = adoptPtr(new QSystemTrayIcon());
- #endif
- }
+--- src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/QtPlatformPlugin.h.orig 2018-05-29 06:56:52 UTC
++++ src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/QtPlatformPlugin.h
+@@ -22,6 +22,7 @@
+ #define QtPlatformPlugin_h
---- src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.h (revision 86536)
-+++ src/3rdparty/webkit/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.h (revision 86550)
-@@ -34,6 +34,7 @@
- #include "KURL.h"
- #include "PlatformString.h"
- #include "QtPlatformPlugin.h"
+ #include <QPluginLoader>
+#include <wtf/PassOwnPtr.h>
- #include <wtf/RefCounted.h>
- QT_BEGIN_NAMESPACE
-@@ -189,7 +190,7 @@
- virtual PassRefPtr<SearchPopupMenu> createSearchPopupMenu(PopupMenuClient*) const;
- virtual void populateVisitedLinks();
+ class QWebSelectMethod;
+ class QWebKitPlatformPlugin;
+@@ -37,15 +38,20 @@ namespace WebCore {
-- QWebSelectMethod* createSelectPopup() const;
-+ PassOwnPtr<QWebSelectMethod> createSelectPopup() const;
+ class QtPlatformPlugin {
+ public:
+- QtPlatformPlugin() : m_loaded(false), m_plugin(0) {}
++ QtPlatformPlugin()
++ : m_loaded(false)
++ , m_plugin(0)
++ {
++ }
++
+ ~QtPlatformPlugin();
- virtual void dispatchViewportDataDidChange(const ViewportArguments&) const;
-
---- src/3rdparty/webkit/Source/WebCore/plugins/qt/PluginViewQt.cpp (revision 86536)
-+++ src/3rdparty/webkit/Source/WebCore/plugins/qt/PluginViewQt.cpp (revision 86550)
-@@ -950,7 +950,7 @@ bool PluginView::platformStart()
+- QWebSelectMethod* createSelectInputMethod();
+- QWebNotificationPresenter* createNotificationPresenter();
+- QWebHapticFeedbackPlayer* createHapticFeedbackPlayer();
+- QWebTouchModifier* createTouchModifier();
++ PassOwnPtr<QWebSelectMethod> createSelectInputMethod();
++ PassOwnPtr<QWebNotificationPresenter> createNotificationPresenter();
++ PassOwnPtr<QWebHapticFeedbackPlayer> createHapticFeedbackPlayer();
++ PassOwnPtr<QWebTouchModifier> createTouchModifier();
+ #if ENABLE(VIDEO) && USE(QT_MULTIMEDIA)
+- QWebFullScreenVideoHandler* createFullScreenVideoHandler();
++ PassOwnPtr<QWebFullScreenVideoHandler> createFullScreenVideoHandler();
+ #endif
- #if USE(ACCELERATED_COMPOSITING) && !USE(TEXTURE_MAPPER)
- if (shouldUseAcceleratedCompositing()) {
-- m_platformLayer = new PluginGraphicsLayerQt(this);
-+ m_platformLayer = adoptPtr(new PluginGraphicsLayerQt(this));
- // Trigger layer computation in RenderLayerCompositor
- m_element->setNeedsStyleRecalc(SyntheticStyleChange);
- }
+ QWebKitPlatformPlugin* plugin();
diff --git a/converters/wkhtmltopdf/files/patch-mkspecs_common_gcc-base.conf b/converters/wkhtmltopdf/files/patch-mkspecs_common_gcc-base.conf
deleted file mode 100644
index 785413c904bd..000000000000
--- a/converters/wkhtmltopdf/files/patch-mkspecs_common_gcc-base.conf
+++ /dev/null
@@ -1,11 +0,0 @@
---- mkspecs/common/gcc-base.conf.orig 2018-10-01 11:36:14 UTC
-+++ mkspecs/common/gcc-base.conf
-@@ -53,7 +53,7 @@ QMAKE_CXXFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_STATIC_LIB
- QMAKE_CXXFLAGS_YACC += $$QMAKE_CFLAGS_YACC
- QMAKE_CXXFLAGS_HIDESYMS += $$QMAKE_CFLAGS_HIDESYMS -fvisibility-inlines-hidden
-
--QMAKE_LFLAGS +=
-+QMAKE_LFLAGS += -Wl,-rpath=%%LOCALBASE%%/lib/gcc%%GCC_DEFAULT%%
- QMAKE_LFLAGS_DEBUG +=
- QMAKE_LFLAGS_APP +=
- QMAKE_LFLAGS_RELEASE +=
diff --git a/converters/wkhtmltopdf/files/patch-src__3rdparty__webkit__Source__JavaScriptCore__runtime__JSValueInlineMethods.h b/converters/wkhtmltopdf/files/patch-src__3rdparty__webkit__Source__JavaScriptCore__runtime__JSValueInlineMethods.h
index e2b4f74d54ac..b902a924444b 100644
--- a/converters/wkhtmltopdf/files/patch-src__3rdparty__webkit__Source__JavaScriptCore__runtime__JSValueInlineMethods.h
+++ b/converters/wkhtmltopdf/files/patch-src__3rdparty__webkit__Source__JavaScriptCore__runtime__JSValueInlineMethods.h
@@ -1,6 +1,6 @@
---- ./src/3rdparty/webkit/Source/JavaScriptCore/runtime/JSValueInlineMethods.h.orig 2011-12-08 06:06:02.000000000 +0100
-+++ ./src/3rdparty/webkit/Source/JavaScriptCore/runtime/JSValueInlineMethods.h 2012-01-08 17:18:52.511348683 +0100
-@@ -227,7 +227,11 @@
+--- src/3rdparty/webkit/Source/JavaScriptCore/runtime/JSValueInlineMethods.h.orig 2018-05-29 06:56:52 UTC
++++ src/3rdparty/webkit/Source/JavaScriptCore/runtime/JSValueInlineMethods.h
+@@ -227,7 +227,11 @@ namespace JSC {
u.asBits.tag = CellTag;
else
u.asBits.tag = EmptyValueTag;
@@ -12,7 +12,7 @@
#if ENABLE(JSC_ZOMBIES)
ASSERT(!isZombie());
#endif
-@@ -239,7 +243,11 @@
+@@ -239,7 +243,11 @@ namespace JSC {
u.asBits.tag = CellTag;
else
u.asBits.tag = EmptyValueTag;
diff --git a/converters/wkhtmltopdf/files/patch-src__3rdparty__webkit__Source__JavaScriptCore__wtf__Atomics.h b/converters/wkhtmltopdf/files/patch-src__3rdparty__webkit__Source__JavaScriptCore__wtf__Atomics.h
index 4fc6d3251ea5..9dac669034ad 100644
--- a/converters/wkhtmltopdf/files/patch-src__3rdparty__webkit__Source__JavaScriptCore__wtf__Atomics.h
+++ b/converters/wkhtmltopdf/files/patch-src__3rdparty__webkit__Source__JavaScriptCore__wtf__Atomics.h
@@ -1,6 +1,6 @@
---- src/3rdparty/webkit/Source/JavaScriptCore/wtf/Atomics.h.orig 2014-04-10 20:37:11.000000000 +0200
-+++ src/3rdparty/webkit/Source/JavaScriptCore/wtf/Atomics.h 2014-04-24 16:11:40.000000000 +0200
-@@ -63,18 +63,10 @@
+--- src/3rdparty/webkit/Source/JavaScriptCore/wtf/Atomics.h.orig 2018-05-29 06:56:52 UTC
++++ src/3rdparty/webkit/Source/JavaScriptCore/wtf/Atomics.h
+@@ -63,19 +63,11 @@
#if OS(WINDOWS)
#include <windows.h>
@@ -15,20 +15,21 @@
-#include <ext/atomicity.h>
-#else
-#include <bits/atomicity.h>
--#endif
#endif
+-#endif
namespace WTF {
-@@ -90,12 +82,6 @@
+
+@@ -89,12 +81,6 @@ inline int atomicDecrement(int* addend) { return Inter
+ inline int atomicIncrement(int volatile* addend) { return InterlockedIncrement(reinterpret_cast<long volatile*>(addend)); }
inline int atomicDecrement(int volatile* addend) { return InterlockedDecrement(reinterpret_cast<long volatile*>(addend)); }
#endif
-
+-
-#elif OS(DARWIN)
-#define WTF_USE_LOCKFREE_THREADSAFESHARED 1
-
-inline int atomicIncrement(int volatile* addend) { return OSAtomicIncrement32Barrier(const_cast<int*>(addend)); }
-inline int atomicDecrement(int volatile* addend) { return OSAtomicDecrement32Barrier(const_cast<int*>(addend)); }
--
+
#elif OS(ANDROID)
- inline int atomicIncrement(int volatile* addend) { return android_atomic_inc(addend); }
diff --git a/converters/wkhtmltopdf/files/patch-src__3rdparty__webkit__Source__WebKit__qt__QtWebKit.pro b/converters/wkhtmltopdf/files/patch-src__3rdparty__webkit__Source__WebKit__qt__QtWebKit.pro
index 994adda65917..0459dfc6a6d3 100644
--- a/converters/wkhtmltopdf/files/patch-src__3rdparty__webkit__Source__WebKit__qt__QtWebKit.pro
+++ b/converters/wkhtmltopdf/files/patch-src__3rdparty__webkit__Source__WebKit__qt__QtWebKit.pro
@@ -1,6 +1,6 @@
---- ./src/3rdparty/webkit/Source/WebKit/qt/QtWebKit.pro.orig 2011-12-08 06:06:03.000000000 +0100
-+++ ./src/3rdparty/webkit/Source/WebKit/qt/QtWebKit.pro 2012-01-08 17:18:52.521346053 +0100
-@@ -84,7 +84,7 @@
+--- src/3rdparty/webkit/Source/WebKit/qt/QtWebKit.pro.orig 2018-05-29 06:56:52 UTC
++++ src/3rdparty/webkit/Source/WebKit/qt/QtWebKit.pro
+@@ -115,7 +115,7 @@ CONFIG(QTDIR_build) {
}
moduleFile=$$PWD/qt_webkit_version.pri
diff --git a/converters/wkhtmltopdf/pkg-plist b/converters/wkhtmltopdf/pkg-plist
index fd976aac4a0a..695b366c2155 100644
--- a/converters/wkhtmltopdf/pkg-plist
+++ b/converters/wkhtmltopdf/pkg-plist
@@ -7,6 +7,6 @@ include/wkhtmltox/pdf.h
lib/libwkhtmltox.so
lib/libwkhtmltox.so.0
lib/libwkhtmltox.so.0.12
-lib/libwkhtmltox.so.0.12.5
+lib/libwkhtmltox.so.0.12.6
man/man1/wkhtmltoimage.1.gz
man/man1/wkhtmltopdf.1.gz