Bug 354182 - Ark crashes when opening an XML file.
Summary: Ark crashes when opening an XML file.
Status: RESOLVED FIXED
Alias: None
Product: ark
Classification: Applications
Component: general (show other bugs)
Version: 2.19
Platform: openSUSE Linux
: NOR crash
Target Milestone: ---
Assignee: Raphael Kubo da Costa
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2015-10-21 17:28 UTC by Manfred Kitzbichler
Modified: 2015-10-26 16:19 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In: 15.12.0


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Manfred Kitzbichler 2015-10-21 17:28:19 UTC
Application: ark (2.19)
KDE Platform Version: 4.14.10
Qt Version: 4.8.7
Operating System: Linux 4.2.1-1-desktop x86_64
Distribution: "openSUSE 20150903 (Tumbleweed) (x86_64)"

-- Information about the crash:
- What I was doing when the application crashed:

I opened a zip file from gist.github.com and clicked on an XML file that was inside the archive.

Expected behaviour: preview of XML file

Actual result: Ark crashed

-- Backtrace:
Application: Ark (ark), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
84	T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS)
[Current thread is 1 (Thread 0x7fb9e59c4780 (LWP 11295))]

Thread 4 (Thread 0x7fb9cea47700 (LWP 11299)):
#0  0x00007fb9e033bcfc in __lll_lock_wait () at ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
#1  0x00007fb9e0335bb2 in __GI___pthread_mutex_lock (mutex=0x7fb9e5a23908 <_rtld_local+2312>) at ../nptl/pthread_mutex_lock.c:116
#2  0x00007fb9e581298d in tls_get_addr_tail (ti=0x7fb9e2eebf60, dtv=0x1624e30, the_map=0x7fb9e59df000) at dl-tls.c:765
#3  0x00007fb9e2c04e30 in __cxxabiv1::__cxa_get_globals() () at ../../../../libstdc++-v3/libsupc++/eh_globals.cc:62
#4  0x00007fb9e2c04d59 in std::uncaught_exception() () at ../../../../libstdc++-v3/libsupc++/eh_catch.cc:139
#5  0x00007fb9e2f68be9 in  () at /usr/lib64/libQtCore.so.4
#6  0x00007fb9e2f68ec4 in qWarning(char const*, ...) () at /usr/lib64/libQtCore.so.4
#7  0x00007fb9e30a6ac3 in  () at /usr/lib64/libQtCore.so.4
#8  0x00007fb9dee34911 in g_main_context_check () at /usr/lib64/libglib-2.0.so.0
#9  0x00007fb9dee34e38 in  () at /usr/lib64/libglib-2.0.so.0
#10 0x00007fb9dee34f9c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#11 0x00007fb9e30a726e in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#12 0x00007fb9e30773e1 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#13 0x00007fb9e30776f5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#14 0x00007fb9e2f70a59 in QThread::exec() () at /usr/lib64/libQtCore.so.4
#15 0x00007fb9e30584c3 in  () at /usr/lib64/libQtCore.so.4
#16 0x00007fb9e2f7323c in  () at /usr/lib64/libQtCore.so.4
#17 0x00007fb9e03334a4 in start_thread (arg=0x7fb9cea47700) at pthread_create.c:334
#18 0x00007fb9e28b5cad in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7fb9cd03b700 (LWP 11309)):
#0  0x00007fb9e033907f in pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007fb9bd460de6 in WTF::TCMalloc_PageHeap::scavengerThread() () at /usr/lib64/libQtWebKit.so.4
#2  0x00007fb9bd460e19 in  () at /usr/lib64/libQtWebKit.so.4
#3  0x00007fb9e03334a4 in start_thread (arg=0x7fb9cd03b700) at pthread_create.c:334
#4  0x00007fb9e28b5cad in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7fb977aa0700 (LWP 11310)):
#0  0x00007fb9e28ad32d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007fb9dee34e94 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007fb9dee34f9c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3  0x00007fb9e30a726e in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#4  0x00007fb9e30773e1 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#5  0x00007fb9e30776f5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#6  0x00007fb9e2f70a59 in QThread::exec() () at /usr/lib64/libQtCore.so.4
#7  0x00007fb9e2f7323c in  () at /usr/lib64/libQtCore.so.4
#8  0x00007fb9e03334a4 in start_thread (arg=0x7fb977aa0700) at pthread_create.c:334
#9  0x00007fb9e28b5cad in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7fb9e59c4780 (LWP 11295)):
[KCrash Handler]
#6  0x00007fb9dbdd9e45 in OPENSSL_ia32_cpuid () at /lib64/libcrypto.so.1.0.0
#7  0x00007fb97665c33d in  () at /opt/google/talkplugin/libnpgoogletalk.so
#8  0x00007fb9766391b3 in _init () at /opt/google/talkplugin/libnpgoogletalk.so
#9  0x00007fb976631688 in  () at /opt/google/talkplugin/libnpgoogletalk.so
#10 0x00007fb9e581019a in call_init (l=0x19553a0, argc=argc@entry=4, argv=argv@entry=0x7ffe0105b148, env=env@entry=0x1259c80) at dl-init.c:58
#11 0x00007fb9e58102eb in _dl_init (env=0x1259c80, argv=0x7ffe0105b148, argc=4, l=<optimized out>) at dl-init.c:30
#12 0x00007fb9e58102eb in _dl_init (main_map=main_map@entry=0x19553a0, argc=4, argv=0x7ffe0105b148, env=0x1259c80) at dl-init.c:120
#13 0x00007fb9e5814790 in dl_open_worker (a=a@entry=0x7ffe010596c8) at dl-open.c:564
#14 0x00007fb9e5810084 in _dl_catch_error (objname=objname@entry=0x7ffe010596b8, errstring=errstring@entry=0x7ffe010596c0, mallocedp=mallocedp@entry=0x7ffe010596b7, operate=operate@entry=0x7fb9e58143b0 <dl_open_worker>, args=args@entry=0x7ffe010596c8) at dl-error.c:187
#15 0x00007fb9e5813f31 in _dl_open (file=0x1948578 "/opt/google/talkplugin/libnpgoogletalk.so", mode=-2147483646, caller_dlopen=0x7fb9e306a8f6, nsid=-2, argc=4, argv=<optimized out>, env=0x1259c80) at dl-open.c:649
#16 0x00007fb9dd1e3fc9 in dlopen_doit (a=a@entry=0x7ffe010598e0) at dlopen.c:66
#17 0x00007fb9e5810084 in _dl_catch_error (objname=0x113bec0, errstring=0x113bec8, mallocedp=0x113beb8, operate=0x7fb9dd1e3f70 <dlopen_doit>, args=0x7ffe010598e0) at dl-error.c:187
#18 0x00007fb9dd1e45e1 in _dlerror_run (operate=operate@entry=0x7fb9dd1e3f70 <dlopen_doit>, args=args@entry=0x7ffe010598e0) at dlerror.c:163
#19 0x00007fb9dd1e4061 in __dlopen (file=<optimized out>, mode=<optimized out>) at dlopen.c:87
#20 0x00007fb9e306a8f6 in  () at /usr/lib64/libQtCore.so.4
#21 0x00007fb9e3064e74 in  () at /usr/lib64/libQtCore.so.4
#22 0x00007fb9bc8e3ad2 in WebCore::PluginPackage::load() () at /usr/lib64/libQtWebKit.so.4
#23 0x00007fb9bc8e3df6 in WebCore::PluginPackage::fetchInfo() () at /usr/lib64/libQtWebKit.so.4
#24 0x00007fb9bc688216 in WebCore::PluginPackage::createPackage(WTF::String const&, long const&) () at /usr/lib64/libQtWebKit.so.4
#25 0x00007fb9bc685efe in WebCore::PluginDatabase::refresh() () at /usr/lib64/libQtWebKit.so.4
#26 0x00007fb9bc686c61 in WebCore::PluginDatabase::installedPlugins(bool) () at /usr/lib64/libQtWebKit.so.4
#27 0x00007fb9bbf4f452 in PlatformStrategiesQt::getPluginInfo(WebCore::Page const*, WTF::Vector<WebCore::PluginInfo, 0ul>&) () at /usr/lib64/libQtWebKit.so.4
#28 0x00007fb9bc5d6804 in WebCore::PluginData::PluginData(WebCore::Page const*) () at /usr/lib64/libQtWebKit.so.4
#29 0x00007fb9bc5b5700 in WebCore::Page::pluginData() const () at /usr/lib64/libQtWebKit.so.4
#30 0x00007fb9bc188f91 in WebCore::DOMImplementation::createDocument(WTF::String const&, WebCore::Frame*, WebCore::KURL const&, bool) () at /usr/lib64/libQtWebKit.so.4
#31 0x00007fb9bc4f86f7 in WebCore::DocumentWriter::createDocument(WebCore::KURL const&) () at /usr/lib64/libQtWebKit.so.4
#32 0x00007fb9bc4f8e78 in WebCore::DocumentWriter::begin(WebCore::KURL const&, bool, WebCore::Document*) () at /usr/lib64/libQtWebKit.so.4
#33 0x00007fb9bc4ec2bc in WebCore::DocumentLoader::commitData(char const*, unsigned long) () at /usr/lib64/libQtWebKit.so.4
#34 0x00007fb9bbf32e8e in WebCore::FrameLoaderClientQt::committedLoad(WebCore::DocumentLoader*, char const*, int) () at /usr/lib64/libQtWebKit.so.4
#35 0x00007fb9bc4eba2a in WebCore::DocumentLoader::commitLoad(char const*, int) () at /usr/lib64/libQtWebKit.so.4
#36 0x00007fb9bc533965 in WebCore::ResourceLoader::didReceiveData(char const*, int, long long, bool) () at /usr/lib64/libQtWebKit.so.4
#37 0x00007fb9bc51f8a0 in WebCore::MainResourceLoader::didReceiveData(char const*, int, long long, bool) () at /usr/lib64/libQtWebKit.so.4
#38 0x00007fb9bc531c08 in WebCore::ResourceLoader::didReceiveData(WebCore::ResourceHandle*, char const*, int, int) () at /usr/lib64/libQtWebKit.so.4
#39 0x00007fb9bc8a9b1f in WebCore::QNetworkReplyHandler::forwardData() () at /usr/lib64/libQtWebKit.so.4
#40 0x00007fb9bc8ace72 in WebCore::QNetworkReplyHandlerCallQueue::flush() [clone .part.51] () at /usr/lib64/libQtWebKit.so.4
#41 0x00007fb9bc8acef0 in WebCore::QNetworkReplyWrapper::didReceiveReadyRead() () at /usr/lib64/libQtWebKit.so.4
#42 0x00007fb9e308bf60 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /usr/lib64/libQtCore.so.4
#43 0x00007fb9e308bf60 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /usr/lib64/libQtCore.so.4
#44 0x00007fb9e4cf7b44 in KIO::TransferJob::data(KIO::Job*, QByteArray const&) () at /usr/lib64/libkio.so.5
#45 0x00007fb9e4cf9e39 in KIO::TransferJob::slotData(QByteArray const&) () at /usr/lib64/libkio.so.5
#46 0x00007fb9e308bf60 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /usr/lib64/libQtCore.so.4
#47 0x00007fb9e4d9eed2 in KIO::SlaveInterface::data(QByteArray const&) () at /usr/lib64/libkio.so.5
#48 0x00007fb9e4da1a90 in KIO::SlaveInterface::dispatch(int, QByteArray const&) () at /usr/lib64/libkio.so.5
#49 0x00007fb9e4d9ec4d in KIO::SlaveInterface::dispatch() () at /usr/lib64/libkio.so.5
#50 0x00007fb9e4d922ea in KIO::Slave::gotInput() () at /usr/lib64/libkio.so.5
#51 0x00007fb9e308bf60 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /usr/lib64/libQtCore.so.4
#52 0x00007fb9e4cc4027 in  () at /usr/lib64/libkio.so.5
#53 0x00007fb9e3091aa1 in QObject::event(QEvent*) () at /usr/lib64/libQtCore.so.4
#54 0x00007fb9e3a95f1c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQtGui.so.4
#55 0x00007fb9e3a9c9ec in QApplication::notify(QObject*, QEvent*) () at /usr/lib64/libQtGui.so.4
#56 0x00007fb9e47c863a in KApplication::notify(QObject*, QEvent*) () at /usr/lib64/libkdeui.so.5
#57 0x00007fb9e3078a1d in QCoreApplication::notifyInternal(QObject*, QEvent*) () at /usr/lib64/libQtCore.so.4
#58 0x00007fb9e307be4e in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib64/libQtCore.so.4
#59 0x00007fb9e30a70de in  () at /usr/lib64/libQtCore.so.4
#60 0x00007fb9dee34cc7 in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#61 0x00007fb9dee34ef8 in  () at /usr/lib64/libglib-2.0.so.0
#62 0x00007fb9dee34f9c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#63 0x00007fb9e30a724e in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#64 0x00007fb9e3b39946 in  () at /usr/lib64/libQtGui.so.4
#65 0x00007fb9e30773e1 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#66 0x00007fb9e30776f5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#67 0x00007fb9e307cef9 in QCoreApplication::exec() () at /usr/lib64/libQtCore.so.4
#68 0x000000000040ad86 in  ()
#69 0x00007fb9e27ed610 in __libc_start_main (main=0x409640, argc=4, argv=0x7ffe0105b148, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffe0105b138) at libc-start.c:289
#70 0x000000000040bb79 in _start ()

Reported using DrKonqi
Comment 1 Elvis Angelaccio 2015-10-21 17:48:46 UTC
Can you provide the link to the zip that caused the crash?
Comment 2 Elvis Angelaccio 2015-10-26 16:19:29 UTC
Git commit f2090934229ec25c16bdf84e808dfe7cee8a1cd1 by Elvis Angelaccio.
Committed on 26/10/2015 at 16:05.
Pushed by elvisangelaccio into branch 'master'.

Drop KHTML dependency and skip KHTMLPart when previewing

This drops the KHTML framework as dependency (which was actually needed only to
disable javascript and friends from the KHTMLPart) and drops the KHTMLPart as
well, when previewing an HTML or XML file. Now we always use the second available
service offer, which is the katepart by default, to preview those mimetypes.
The user can still render an HTML entry, by opening it in the browser with the
'Open File' action.
Related: bug 201162, bug 353786
FIXED-IN: 15.12.0

Differential Revision: D454

M  +1    -1    CMakeLists.txt
M  +1    -1    part/CMakeLists.txt
M  +13   -34   part/arkviewer.cpp
M  +0    -3    part/arkviewer.h

http://commits.kde.org/ark/f2090934229ec25c16bdf84e808dfe7cee8a1cd1