WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED DUPLICATE of
bug 29450
Bug 32704
Crash with QWebPluginFactory plugins replacing NPAPI plugins
https://bugs.webkit.org/show_bug.cgi?id=32704
Summary
Crash with QWebPluginFactory plugins replacing NPAPI plugins
Pierre
Reported
2009-12-18 02:47:58 PST
Created
attachment 45133
[details]
Test case Hi I'm currently building a web browser that has to be protected from the user : the user should not be able to access the local file system for instance. In order to do this, plugins for instance must be disabled (except Flash). When I do that using a custom QWebPluginFactory that returns a widget in every case, I get a crash on windows with the acrobat reader plugin. You can check this behaviour with the attached source file. How to reproduce the problem : - launch the test case - search "PDF example" - click on the first link, a simple PDF file. Without the acrobat reader plugin, there is no crash because the PDF file is considered as unsupported content. Thanks Pierre
Attachments
Test case
(1.98 KB, text/plain)
2009-12-18 02:47 PST
,
Pierre
no flags
Details
Test case - fixed compilation...
(1.95 KB, application/octet-stream)
2009-12-18 03:01 PST
,
Pierre
no flags
Details
Show Obsolete
(1)
View All
Add attachment
proposed patch, testcase, etc.
Pierre
Comment 1
2009-12-18 03:01:22 PST
Created
attachment 45135
[details]
Test case - fixed compilation... Sorry, I messed a bit with my files...
Pierre
Comment 2
2009-12-18 06:33:22 PST
Well, the problem is much more generic. When a NPAPI plugin registers itself for a mime type, this mime type will no longer be considered a unsupported content, so WebKit will always try to open it itself. It'll call the plugin to render this content. But when a QWebPluginFactory takes over, then trouble begins. It looks like QWebPluginFactory's plugins can't be used this way, they have to be embedded inside a web page, thus the crashes. You can get this problem on linux too using the flash plugin : just replace
http://www.google.fr
with the URL of a flash video directly in the source code of the test case, and it'll crash. Here is the backtrace : #0 0x00007ffff778fab0 in typeinfo name for WebCore::QtPluginWidget () from /usr/lib/libQtWebKit.so.4 #1 0x00007ffff729c89e in WebCore::FrameLoaderClientQt::committedLoad (this=0x6db2e0, loader=0x7fffeb8e5080, data=0x75d088 "FWS\005\271\n", length=1067) at ../WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp:697 #2 0x00007ffff709f02d in WebCore::DocumentLoader::commitLoad (this=0x7fffeb8e5080, data=0x75d088 "FWS\005\271\n", length=1067) at loader/DocumentLoader.cpp:342 #3 0x00007ffff70dd3e9 in WebCore::ResourceLoader::didReceiveData (this=0x7fffeb90a680, data=0x75d088 "FWS\005\271\n", length=1067, lengthReceived=1067, allAtOnce=120) at loader/ResourceLoader.cpp:248 #4 0x00007ffff70ceacc in WebCore::MainResourceLoader::didReceiveData (this=0x7fffeb90a680, data=0x75d088 "FWS\005\271\n", length=1067, lengthReceived=1067, allAtOnce=<value optimized out>) at loader/MainResourceLoader.cpp:374 #5 0x00007ffff727ce9c in WebCore::QNetworkReplyHandler::forwardData (this=0x6d0c10) at platform/network/qt/QNetworkReplyHandler.cpp:360 #6 0x00007ffff727e598 in WebCore::QNetworkReplyHandler::qt_metacall (this=0x6d0c10, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=<value optimized out>) at .moc/release-shared/moc_QNetworkReplyHandler.cpp:84 #7 0x00007ffff59f3d38 in QObject::event(QEvent*) () from /usr/lib/libQtCore.so.4 #8 0x00007ffff5ef508d in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4 #9 0x00007ffff5efb3bd in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4 #10 0x00007ffff59e3bdc in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4 #11 0x00007ffff59e4abc in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQtCore.so.4 #12 0x00007ffff5a0db23 in ?? () from /usr/lib/libQtCore.so.4 #13 0x00007ffff30a713a in g_main_context_dispatch () from /lib/libglib-2.0.so.0 #14 0x00007ffff30aa998 in ?? () from /lib/libglib-2.0.so.0 #15 0x00007ffff30aab4c in g_main_context_iteration () from /lib/libglib-2.0.so.0 #16 0x00007ffff5a0d68c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4 #17 0x00007ffff5fa553f in ?? () from /usr/lib/libQtGui.so.4 #18 0x00007ffff59e24c2 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4 #19 0x00007ffff59e2894 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4 #20 0x00007ffff59e4d46 in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4 #21 0x0000000000402444 in main (argc=1, argv=0x7fffffffe288) at main.cpp:54
Pierre
Comment 3
2009-12-18 08:06:00 PST
Update the bug flags to reflect my last comment...
Pierre
Comment 4
2009-12-21 02:40:52 PST
Improve the bug report title
Tor Arne Vestbø
Comment 5
2010-03-10 06:24:25 PST
Please follow the QtWebKit bug reporting guidelines when reporting bugs. See
http://trac.webkit.org/wiki/QtWebKitBugs
Specifically: - The 'QtWebKit' component should only be used for bugs/features in the public QtWebKit API layer, not to signify that the bug is specific to the Qt port of WebKit
http://trac.webkit.org/wiki/QtWebKitBugs#Component
- Add the keyword 'Qt' to signal that it's a Qt-related bug
http://trac.webkit.org/wiki/QtWebKitBugs#Keywords
Jocelyn Turcotte
Comment 6
2010-03-17 04:58:47 PDT
I could reproduce the crash on Windows and the stack trace is the same as
bug 29450
so I will resolve this one as duplicate. I was not able to reproduce the crash on linux using the flash video method with your test case on Qt4.6 + WebKit trunk. If you think that the flash crash is a different bug and you have more information about it, it would be interesting if you can add it to this bug report. thanks *** This bug has been marked as a duplicate of
bug 29450
***
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug