Bug 225124 - Blogilo crashing on stylesheet downloading [KBlog::BlogPost::postId, KBlog::GDataPrivate::slotFetchPost]
Summary: Blogilo crashing on stylesheet downloading [KBlog::BlogPost::postId, KBlog::G...
Status: RESOLVED FIXED
Alias: None
Product: blogilo
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Mehrdad Momeny
URL:
Keywords:
: 224188 226421 227875 228552 235318 235956 237574 238478 268366 (view as bug list)
Depends on:
Blocks:
 
Reported: 2010-02-01 12:03 UTC by Michał Zając
Modified: 2011-03-13 16:34 UTC (History)
13 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Patch for KBlog! (1.99 KB, patch)
2010-02-13 19:25 UTC, Mehrdad Momeny
Details
New crash information added by DrKonqi (5.87 KB, text/plain)
2010-02-22 04:51 UTC, Lissandro Sosa
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Michał Zając 2010-02-01 12:03:32 UTC
Application: blogilo (1.0.1)
KDE Platform Version: 4.3.95 (KDE 4.3.95 (KDE 4.4 RC2))
Qt Version: 4.6.0
Operating System: Linux 2.6.31-17-generic x86_64
Distribution: Ubuntu 9.10

-- Information about the crash:
I was writing a post for my blog on blogspot and when I've tried to preview it I noticed there is a lack of stylesheet so I hit Download stylesheet and then Blogilo crashed

The crash can be reproduced every time.

 -- Backtrace:
Application: Blogilo (blogilo), signal: Segmentation fault
[Current thread is 1 (Thread 0x7fb510a1f7f0 (LWP 4205))]

Thread 2 (Thread 0x7fb4fcc00910 (LWP 4207)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007fb4fbb0a236 in WTF::TCMalloc_PageHeap::scavengerThread (this=0x7fb4fbde9200) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2304
#2  0x00007fb4fbb0a279 in WTF::TCMalloc_PageHeap::runScavengerThread (context=0x7fb4fbdf72cc) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1438
#3  0x00007fb50b532a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#4  0x00007fb50d1e780d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7fb510a1f7f0 (LWP 4205)):
[KCrash Handler]
#5  QString (this=0x3e21470) at /usr/include/qt4/QtCore/qstring.h:714
#6  KBlog::BlogPost::postId (this=0x3e21470) at ../../kblog/blogpost.cpp:146
#7  0x00007fb50f22d5e4 in KBlog::GDataPrivate::slotFetchPost (this=<value optimized out>, loader=0x3634320, feed=<value optimized out>, status=<value optimized out>) at ../../kblog/gdata.cpp:758
#8  0x00007fb50f2237ae in KBlog::GData::qt_metacall (this=0x3b2f600, _c=<value optimized out>, _id=<value optimized out>, _a=0x7fff54e540e0) at ./gdata.moc:120
#9  0x00007fb50d906dc3 in QMetaObject::activate (sender=0x3634320, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x1) at kernel/qobject.cpp:3294
#10 0x00007fb509e94182 in Syndication::Loader::loadingComplete (this=0x7fff54e53ea0, _t1=0x3634320, _t2=<value optimized out>, _t3=Syndication::Success) at ./loader.moc:91
#11 0x00007fb509e9524d in Syndication::Loader::slotRetrieverDone (this=0x3634320, data=..., success=<value optimized out>) at ../../syndication/loader.cpp:157
#12 0x00007fb509e9569d in Syndication::Loader::qt_metacall (this=0x3634320, _c=QMetaObject::InvokeMetaMethod, _id=-1, _a=0x7fff54e542f0) at ./loader.moc:79
#13 0x00007fb50d906dc3 in QMetaObject::activate (sender=0x3654980, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x1) at kernel/qobject.cpp:3294
#14 0x00007fb509e97713 in Syndication::DataRetriever::dataRetrieved (this=0x7fff54e53ea0, _t1=<value optimized out>, _t2=true) at ./dataretriever.moc:85
#15 0x00007fb509e984af in Syndication::FileRetriever::slotResult (this=0x3654980, job=0x2e05d50) at ../../syndication/dataretriever.cpp:132
#16 0x00007fb509e98633 in Syndication::FileRetriever::qt_metacall (this=0x3654980, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff54e54470) at ./dataretriever.moc:213
#17 0x00007fb50d906dc3 in QMetaObject::activate (sender=0x2e05d50, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x1) at kernel/qobject.cpp:3294
#18 0x00007fb50dd0cc62 in KJob::result (this=0x7fff54e53ea0, _t1=0x2e05d50) at ./kjob.moc:194
#19 0x00007fb50dd0cf00 in KJob::emitResult (this=0x2e05d50) at ../../kdecore/jobs/kjob.cpp:312
#20 0x00007fb50ee370b3 in KIO::SimpleJob::slotFinished (this=0x2e05d50) at ../../kio/kio/job.cpp:475
#21 0x00007fb50ee37573 in KIO::TransferJob::slotFinished (this=0x2e05d50) at ../../kio/kio/job.cpp:975
#22 0x00007fb50ee356a1 in KIO::TransferJob::qt_metacall (this=0x2e05d50, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff54e54890) at ./jobclasses.moc:367
#23 0x00007fb50d906dc3 in QMetaObject::activate (sender=0x2ea5a80, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x1) at kernel/qobject.cpp:3294
#24 0x00007fb50eef6531 in KIO::SlaveInterface::dispatch (this=0x2ea5a80, _cmd=104, rawdata=...) at ../../kio/kio/slaveinterface.cpp:175
#25 0x00007fb50eef38a3 in KIO::SlaveInterface::dispatch (this=0x2ea5a80) at ../../kio/kio/slaveinterface.cpp:91
#26 0x00007fb50eee7c06 in KIO::Slave::gotInput (this=0x2ea5a80) at ../../kio/kio/slave.cpp:324
#27 0x00007fb50eee7dec in KIO::Slave::qt_metacall (this=0x2ea5a80, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff54e54cb0) at ./slave.moc:82
#28 0x00007fb50d906dc3 in QMetaObject::activate (sender=0x2ea47c0, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x1) at kernel/qobject.cpp:3294
#29 0x00007fb50ee063b7 in KIO::ConnectionPrivate::dequeue (this=0x2eb5940) at ../../kio/kio/connection.cpp:82
#30 0x00007fb50ee064dd in KIO::Connection::qt_metacall (this=0x2ea47c0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x3dfdd20) at ./connection.moc:79
#31 0x00007fb50d903d19 in QObject::event (this=0x2ea47c0, e=0x2dff440) at kernel/qobject.cpp:1260
#32 0x00007fb50e26ce8c in QApplicationPrivate::notify_helper (this=0x1abb260, receiver=0x2ea47c0, e=0x2dff440) at kernel/qapplication.cpp:4242
#33 0x00007fb50e27348d in QApplication::notify (this=0x7fff54e55720, receiver=0x2ea47c0, e=0x2dff440) at kernel/qapplication.cpp:4125
#34 0x00007fb51043b1e6 in KApplication::notify (this=0x7fff54e55720, receiver=0x2ea47c0, event=0x2dff440) at ../../kdeui/kernel/kapplication.cpp:302
#35 0x00007fb50d8f404c in QCoreApplication::notifyInternal (this=0x7fff54e55720, receiver=0x2ea47c0, event=0x2dff440) at kernel/qcoreapplication.cpp:704
#36 0x00007fb50d8f67c7 in QCoreApplication::sendEvent (receiver=0x0, event_type=<value optimized out>, data=0x1a7ddc0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#37 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=<value optimized out>, data=0x1a7ddc0) at kernel/qcoreapplication.cpp:1345
#38 0x00007fb50d91dae3 in QCoreApplication::sendPostedEvents (s=<value optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#39 postEventSourceDispatch (s=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:276
#40 0x00007fb5088e0bce in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#41 0x00007fb5088e4598 in ?? () from /lib/libglib-2.0.so.0
#42 0x00007fb5088e46c0 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#43 0x00007fb50d91d623 in QEventDispatcherGlib::processEvents (this=0x1a7d820, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:407
#44 0x00007fb50e31b2fe in QGuiEventDispatcherGlib::processEvents (this=0x7fff54e53ea0, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:202
#45 0x00007fb50d8f2972 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#46 0x00007fb50d8f2d4c in QEventLoop::exec (this=0x7fff54e55670, flags=) at kernel/qeventloop.cpp:201
#47 0x00007fb50d8f6a8b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981
#48 0x0000000000421d64 in _start ()
The current source language is "auto; currently asm".
The current source language is "auto; currently c".

Reported using DrKonqi
Comment 1 Dario Andres 2010-02-01 22:34:11 UTC
*** Bug 224188 has been marked as a duplicate of this bug. ***
Comment 2 Shane 2010-02-09 23:55:46 UTC
I can confirm this bug. I am running the final release of KDE SC 4.4 on Arch Linux. My blog is hosted with blogspot as well and the behavior is as the original post describes. It can be reproduced every time.
Comment 3 Christian Weilbach 2010-02-11 00:39:44 UTC
Hope it is fixed for 4.4.1 and 4.5. Works for me now, but the backend does a lot of pointer copies I don't understand really since I am not a Blogilo dev.
Comment 4 Mehrdad Momeny 2010-02-13 19:25:16 UTC
Created attachment 40746 [details]
Patch for KBlog!

This happens for me sometimes!

But I have a patch that fixes it for me! I know, It seems a bit silly that this will fix the problem! but It fixes it for me :-/

It's for KBlog, because I found crash happens there!
Could you check it Christian!?
Comment 5 Dario Andres 2010-02-21 02:49:32 UTC
*** Bug 227875 has been marked as a duplicate of this bug. ***
Comment 6 Lissandro Sosa 2010-02-22 04:51:10 UTC
Created attachment 40996 [details]
New crash information added by DrKonqi

Im was writing a post for my blog! the style for the Post Preview is old, and I wanna update the style, when I Pres get blog style, the apps crashed!
Comment 7 Christian Weilbach 2010-02-25 20:12:35 UTC
@Mehrdad: I have applied your proposed changes to trunk and 4.4. Though it makes actually sense to fetch the postId first and than work with a string copy internally it cannot fix the problem really. The crash happened at post->postId in the for loop and now you say it is fixed for you. Actually this means to me that the post gets deleted somewhere inbetween. I have patched Blogilo in trunk and 4.4 and commented a delete call in backend.cpp as it fixed the bug for me. I guess that due to multithreading the post gets deleted there first and your proposed patch simply covers that race condition.
Please prove me wrong if I am. I don't really understand the backend code. Maybe you could try to track/debug the lifetime of the stylegetter post on a blogger.com account and fix it properly.
Comment 8 Dario Andres 2010-02-26 02:49:58 UTC
*** Bug 228552 has been marked as a duplicate of this bug. ***
Comment 9 Mehrdad Momeny 2010-05-02 07:49:22 UTC
*** Bug 235956 has been marked as a duplicate of this bug. ***
Comment 10 Mehrdad Momeny 2010-05-02 07:49:33 UTC
*** Bug 226421 has been marked as a duplicate of this bug. ***
Comment 11 Mehrdad Momeny 2010-05-16 16:38:43 UTC
*** Bug 237574 has been marked as a duplicate of this bug. ***
Comment 12 Mehrdad Momeny 2010-07-02 20:08:13 UTC
*** Bug 238478 has been marked as a duplicate of this bug. ***
Comment 13 Mehrdad Momeny 2010-12-01 08:17:16 UTC
*** Bug 235318 has been marked as a duplicate of this bug. ***
Comment 14 Mehrdad Momeny 2011-03-13 14:32:14 UTC
*** Bug 268366 has been marked as a duplicate of this bug. ***
Comment 15 Dario Andres 2011-03-13 14:41:18 UTC
[Comment from a bug triager]
- Is bug 260589 related to this? (is that the fix for this bug report ?)
Thanks
Comment 16 Mehrdad Momeny 2011-03-13 16:34:38 UTC
(In reply to comment #15)
> [Comment from a bug triager]
> - Is bug 260589 related to this? (is that the fix for this bug report ?)
> Thanks

No Dario, that bug does not relate to this