Bug 374258

Summary: QtWebengine requires AA_ShareOpenGLContexts when initialised from a plugin
Product: [Applications] konqueror Reporter: RJVB <rjvbertin>
Component: generalAssignee: Konqueror Developers <konq-bugs>
Status: RESOLVED FIXED    
Severity: normal CC: simonandric5, wbauer1
Priority: NOR    
Version: 5.0.97   
Target Milestone: ---   
Platform: Compiled Sources   
OS: All   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: set shared OpenGl attribute

Description RJVB 2016-12-28 17:08:34 UTC
I just tested my new Qt WebEngine 5.7.1 build with Konqueror5 and noticed this:

Qt WebEngine seems to be initialized from a plugin. Please set Qt::AA_ShareOpenGLContexts using QCoreApplication::setAttribute before constructing QGuiApplication.
WebEngineContext used before QtWebEngine::initialize() or OpenGL context creation failed.
Comment 1 RJVB 2016-12-29 11:49:27 UTC
Also an issue on Linux:

Thread 1 (Thread 0x7f343f372800 (LWP 18880)):
[KCrash Handler]
#6  QOpenGLContext::shareGroup (this=this@entry=0x0) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/gui/kernel/qopenglcontext.cpp:1108
#7  0x00007f343a213a99 in QOpenGLContext::areSharing (first=<optimized out>, second=0x0) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/gui/kernel/qopenglcontext.cpp:427
#8  0x00007f340d2c4bbe in QtWebEngineCore::DelegatedFrameNode::DelegatedFrameNode (this=0x4b27de0) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel-qtwebengine/work/qtwebengine-opensource-src-5.7.1/src/core/delegated_frame_node.cpp:427
#9  0x00007f340d2d42ce in QtWebEngineCore::RenderWidgetHostViewQt::updatePaintNode (this=0x40f6b80, oldNode=<optimized out>) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel-qtwebengine/work/qtwebengine-opensource-src-5.7.1/src/core/render_widget_host_view_qt.cpp:749
#10 0x00007f34105bdc0f in QtWebEngineCore::RenderWidgetHostViewQtDelegateWidget::paintGL() () from /opt/local/libexec/qt5/lib/libQt5WebEngineWidgets.so.5
#11 0x00007f343aa87e1d in QOpenGLWidgetPrivate::invokeUserPaint (this=0x40f8200) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qopenglwidget.cpp:823
#12 0x00007f343aa68b68 in QWidget::event (this=0x40f67a0, event=0x7ffe5c3a60b0) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qwidget.cpp:9117
#13 0x00007f34105be142 in QtWebEngineCore::RenderWidgetHostViewQtDelegateWidget::event(QEvent*) () from /opt/local/libexec/qt5/lib/libQt5WebEngineWidgets.so.5
#14 0x00007f343aa25cbc in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x40f67a0, e=0x7ffe5c3a60b0) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qapplication.cpp:3804
#15 0x00007f343aa2ad9f in QApplication::notify (this=0x7ffe5c3a7a50, receiver=0x40f67a0, e=0x7ffe5c3a60b0) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qapplication.cpp:3561
#16 0x00007f34397ec8e8 in QCoreApplication::notifyInternal2 (receiver=receiver@entry=0x40f67a0, event=event@entry=0x7ffe5c3a60b0) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/corelib/kernel/qcoreapplication.cpp:1020
#17 0x00007f343aa61f4a in sendSpontaneousEvent (event=0x7ffe5c3a60b0, receiver=<optimized out>) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/include/QtCore/../../src/corelib/kernel/qcoreapplication.h:228
#18 QWidgetPrivate::sendPaintEvent (this=this@entry=0x40f8200, toBePainted=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qwidget.cpp:5671
#19 0x00007f343aa87cc1 in QOpenGLWidget::resizeEvent (this=0x40f67a0, e=<optimized out>) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qopenglwidget.cpp:1177
#20 0x00007f34105bde81 in QtWebEngineCore::RenderWidgetHostViewQtDelegateWidget::resizeEvent(QResizeEvent*) () from /opt/local/libexec/qt5/lib/libQt5WebEngineWidgets.so.5
#21 0x00007f343aa68f26 in QWidget::event (this=0x40f67a0, event=0x7ffe5c3a64c0) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qwidget.cpp:8912
#22 0x00007f34105be142 in QtWebEngineCore::RenderWidgetHostViewQtDelegateWidget::event(QEvent*) () from /opt/local/libexec/qt5/lib/libQt5WebEngineWidgets.so.5
#23 0x00007f343aa25cbc in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x40f67a0, e=0x7ffe5c3a64c0) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qapplication.cpp:3804
#24 0x00007f343aa2ad9f in QApplication::notify (this=0x7ffe5c3a7a50, receiver=0x40f67a0, e=0x7ffe5c3a64c0) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qapplication.cpp:3561
#25 0x00007f34397ec8e8 in QCoreApplication::notifyInternal2 (receiver=receiver@entry=0x40f67a0, event=event@entry=0x7ffe5c3a64c0) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/corelib/kernel/qcoreapplication.cpp:1020
#26 0x00007f343aa61f02 in sendEvent (event=0x7ffe5c3a64c0, receiver=0x40f67a0) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/include/QtCore/../../src/corelib/kernel/qcoreapplication.h:225
#27 QWidgetPrivate::sendPendingMoveAndResizeEvents (this=this@entry=0x40f8200, recursive=recursive@entry=false, disableUpdates=<optimized out>, disableUpdates@entry=false) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qwidget.cpp:7775
#28 0x00007f343aa65a23 in QWidgetPrivate::show_helper (this=0x40f8200) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qwidget.cpp:7826
#29 0x00007f343aa658c6 in QWidgetPrivate::show_recursive (this=<optimized out>) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qwidget.cpp:7756
#30 0x00007f343aa659c7 in QWidgetPrivate::showChildren (this=this@entry=0x40b25b0, spontaneous=spontaneous@entry=false) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qwidget.cpp:8262
#31 0x00007f343aa65a3f in QWidgetPrivate::show_helper (this=this@entry=0x40b25b0) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qwidget.cpp:7832
#32 0x00007f343aa68675 in QWidget::setVisible (this=0x40b2530, visible=<optimized out>) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qwidget.cpp:8181
#33 0x00007f343aa659d8 in QWidgetPrivate::showChildren (this=this@entry=0x40b2260, spontaneous=spontaneous@entry=false) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qwidget.cpp:8264
#34 0x00007f343aa65a3f in QWidgetPrivate::show_helper (this=this@entry=0x40b2260) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qwidget.cpp:7832
#35 0x00007f343aa68675 in QWidget::setVisible (this=0x40b20a0, visible=<optimized out>) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qwidget.cpp:8181
#36 0x00007f343ef3b2ce in KonqFrame::attachWidget (this=this@entry=0x1f37e30, widget=0x40b20a0) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_kf5-baseapps/kf5-konqueror/work/konqueror-16.12.0/src/konqframe.cpp:176
#37 0x00007f343ef3b459 in KonqFrame::attach (this=0x1f37e30, viewFactory=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_kf5-baseapps/kf5-konqueror/work/konqueror-16.12.0/src/konqframe.cpp:157
#38 0x00007f343ef2809c in KonqView::switchView (this=this@entry=0x1f465a0, viewFactory=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_kf5-baseapps/kf5-konqueror/work/konqueror-16.12.0/src/konqview.cpp:250
#39 0x00007f343ef29b2a in KonqView::changePart (this=this@entry=0x1f465a0, mimeType=..., serviceName=..., forceAutoEmbed=<optimized out>) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_kf5-baseapps/kf5-konqueror/work/konqueror-16.12.0/src/konqview.cpp:361
#40 0x00007f343ef720ab in KonqMainWindow::openView (this=<optimized out>, mimeType=..., _url=..., childView=childView@entry=0x1f465a0, req=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_kf5-baseapps/kf5-konqueror/work/konqueror-16.12.0/src/konqmainwindow.cpp:909
#41 0x00007f343ef23be3 in KonqRun::tryOpenView (this=this@entry=0x3fed2c0, mimeType=..., associatedAppIsKonqueror=associatedAppIsKonqueror@entry=false) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_kf5-baseapps/kf5-konqueror/work/konqueror-16.12.0/src/konqrun.cpp:163
#42 0x00007f343ef246c4 in KonqRun::foundMimeType (this=0x3fed2c0, _type=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_kf5-baseapps/kf5-konqueror/work/konqueror-16.12.0/src/konqrun.cpp:92
#43 0x00007f343d8a4b32 in KRun::mimeTypeDetermined(QString const&) (this=this@entry=0x3fed2c0, mimeType=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_KF5-Frameworks/kf5-kio/work/kio-5.29.0/src/widgets/krun.cpp:1248
#44 0x00007f343de252e1 in KParts::BrowserRun::slotBrowserMimetype(KIO::Job*, QString const&) (this=0x3fed2c0, _job=<optimized out>, type=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_KF5-Frameworks/kf5-kparts/work/kparts-5.29.0/src/browserrun.cpp:257
#45 0x00007f343981948c in call (a=0x7ffe5c3a6ef0, r=0x3fed2c0, this=<optimized out>) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/include/QtCore/../../src/corelib/kernel/qobject_impl.h:124
#46 QMetaObject::activate (sender=sender@entry=0x26f93e0, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=4, argv=argv@entry=0x7ffe5c3a6ef0) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/corelib/kernel/qobject.cpp:3715
#47 0x00007f3439819997 in QMetaObject::activate (sender=sender@entry=0x26f93e0, m=<optimized out>, local_signal_index=local_signal_index@entry=4, argv=argv@entry=0x7ffe5c3a6ef0) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/corelib/kernel/qobject.cpp:3595
#48 0x00007f343d578517 in KIO::TransferJob::mimetype(KIO::Job*, QString const&) (this=this@entry=0x26f93e0, _t1=<optimized out>, _t1@entry=0x26f93e0, _t2=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_KF5-Frameworks/kf5-kio/work/build/src/core/moc_transferjob.cpp:338
#49 0x00007f343d5835ef in KIO::TransferJob::slotMimetype(QString const&) (this=0x26f93e0, type=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_KF5-Frameworks/kf5-kio/work/kio-5.29.0/src/core/transferjob.cpp:265
#50 0x00007f343d57cd3d in KIO::TransferJob::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_KF5-Frameworks/kf5-kio/work/build/src/core/moc_transferjob.cpp:158
#51 0x00007f34398193e9 in QMetaObject::activate (sender=sender@entry=0x2db51d0, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=19, argv=argv@entry=0x7ffe5c3a7100) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/corelib/kernel/qobject.cpp:3730
#52 0x00007f3439819997 in QMetaObject::activate (sender=sender@entry=0x2db51d0, m=<optimized out>, local_signal_index=local_signal_index@entry=19, argv=argv@entry=0x7ffe5c3a7100) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/corelib/kernel/qobject.cpp:3595
#53 0x00007f343d5b5c85 in KIO::SlaveInterface::mimeType (this=this@entry=0x2db51d0, _t1=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_KF5-Frameworks/kf5-kio/work/build/src/core/moc_slaveinterface.cpp:526
#54 0x00007f343d5b9480 in KIO::SlaveInterface::dispatch (this=0x2db51d0, _cmd=21, rawdata=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_KF5-Frameworks/kf5-kio/work/kio-5.29.0/src/core/slaveinterface.cpp:252
#55 0x00007f343d5b81a9 in KIO::SlaveInterface::dispatch (this=0x2db51d0) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_KF5-Frameworks/kf5-kio/work/kio-5.29.0/src/core/slaveinterface.cpp:89
#56 0x00007f343d5814c2 in KIO::Slave::gotInput() (this=0x2db51d0) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_KF5-Frameworks/kf5-kio/work/kio-5.29.0/src/core/slave.cpp:399
#57 0x00007f343d5cea75 in KIO::Slave::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_KF5-Frameworks/kf5-kio/work/build/src/core/moc_slave.cpp:87
#58 0x00007f34398193e9 in QMetaObject::activate (sender=0x3fbdde0, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/corelib/kernel/qobject.cpp:3730
#59 0x00007f3439819997 in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7f343d820260 <KIO::Connection::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/corelib/kernel/qobject.cpp:3595
#60 0x00007f343d54986c in readyRead (this=<optimized out>) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_KF5-Frameworks/kf5-kio/work/build/src/core/moc_connection_p.cpp:142
#61 KIO::ConnectionPrivate::_ZN3KIO17ConnectionPrivate7dequeueEv.part.9(void) (this=0x3fbd070) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_KF5-Frameworks/kf5-kio/work/kio-5.29.0/src/core/connection.cpp:46
#62 0x00007f343981a201 in QObject::event (this=0x3fbdde0, e=<optimized out>) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/corelib/kernel/qobject.cpp:1256
#63 0x00007f343aa25cbc in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x3fbdde0, e=0x4020380) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qapplication.cpp:3804
#64 0x00007f343aa2ad9f in QApplication::notify (this=0x7ffe5c3a7a50, receiver=0x3fbdde0, e=0x4020380) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qapplication.cpp:3561
#65 0x00007f34397ec8e8 in QCoreApplication::notifyInternal2 (receiver=0x3fbdde0, event=event@entry=0x4020380) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/corelib/kernel/qcoreapplication.cpp:1020
#66 0x00007f34397ee76c in sendEvent (event=0x4020380, receiver=<optimized out>) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/corelib/kernel/qcoreapplication.h:225
#67 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x1bb46e0) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/corelib/kernel/qcoreapplication.cpp:1655
#68 0x00007f34397eec28 in QCoreApplication::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/corelib/kernel/qcoreapplication.cpp:1513
#69 0x00007f34398406e3 in postEventSourceDispatch (s=0x1bf2790) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:270
#70 0x00007f3433aeee04 in g_main_dispatch (context=0x7f3420003000) at /build/buildd/glib2.0-2.40.2/./glib/gmain.c:3064
#71 g_main_context_dispatch (context=context@entry=0x7f3420003000) at /build/buildd/glib2.0-2.40.2/./glib/gmain.c:3663
#72 0x00007f3433aef048 in g_main_context_iterate (context=context@entry=0x7f3420003000, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /build/buildd/glib2.0-2.40.2/./glib/gmain.c:3734
#73 0x00007f3433aef0ec in g_main_context_iteration (context=0x7f3420003000, may_block=may_block@entry=1) at /build/buildd/glib2.0-2.40.2/./glib/gmain.c:3795
#74 0x00007f3439840aef in QEventDispatcherGlib::processEvents (this=0x1c04de0, flags=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:417
#75 0x00007f34397ea7aa in QEventLoop::exec (this=this@entry=0x7ffe5c3a7910, flags=..., flags@entry=...) at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/corelib/kernel/qeventloop.cpp:206
#76 0x00007f34397f2bbd in QCoreApplication::exec () at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/corelib/kernel/qcoreapplication.cpp:1290
#77 0x00007f343a1d1a8c in QGuiApplication::exec () at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/gui/kernel/qguiapplication.cpp:1611
#78 0x00007f343aa22f55 in QApplication::exec () at /opt/local/var/lnxports/build/_opt_local_site-ports_aqua_qt5-kde-devel/qt5-kde-devel/work/qt-everywhere-opensource-src-5.6.2/qtbase/src/widgets/kernel/qapplication.cpp:2979
#79 0x00007f343efa4a8e in kdemain (argc=<optimized out>, argv=<optimized out>) at /opt/local/var/lnxports/build/_opt_local_site-ports_kf5_kf5-baseapps/kf5-konqueror/work/konqueror-16.12.0/src/konqmain.cpp:232
#80 0x00007f343eb2bf45 in __libc_start_main (main=0x4006f0 <main>, argc=1, argv=0x7ffe5c3a7c08, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffe5c3a7bf8) at libc-start.c:287
#81 0x000000000040071e in _start ()
Comment 2 RJVB 2016-12-29 11:58:55 UTC
Created attachment 103057 [details]
set shared OpenGl attribute

The patch is a bit clumsy (I deactivated the Mac #ifdef without regenerating a new patch) but shows the simple fix.

In case anyone noticed: yes, I built QWE 5.7.1 against Qt 5.6.2 . That works fine otherwise; I'll update this ticket if the shared GL context issue is moot with an all-5.7.x Qt install.
Comment 3 Wolfgang Bauer 2016-12-29 20:22:47 UTC
Actually this is already fixed in master:
https://cgit.kde.org/konqueror.git/commit/?id=4c6575a9852e3dfcf85bd849fa953dcc083029d9

The remaining problem is just that other applications using kparts crash as well if they end up using webenginepart (e.g. ark when previewing a html file).
Comment 4 RJVB 2016-12-29 21:25:50 UTC
Great, and the same fix too :)

Isn't there something that webenginepart can do to deactivate itself when that attribute isn't set (and post an alert)? Everything better than crashing if you can avoid it, no?
Comment 5 RJVB 2016-12-29 21:31:59 UTC
Alternatively someone might be able to conceive a nifty API that applications using KParts can call (or that gets called automatically when the application is loaded) and that does the necessary preparations as a function of what kparts are installed.
I.e. an application using KParts will set the shared OpenGL attribute automatically if webenginepart is available.

I don't really know how you'd implement the bit where kparts indicate their requirements in a universal fashion but I guess that aspect can evolve as needed.