[Kde-pim] Review Request: Fix a crash in libksieve/kmanagesieve
Allen Winter
winter at kde.org
Sun Aug 19 18:48:56 BST 2012
> On Aug. 18, 2012, 6:49 p.m., Laurent Montel wrote:
> > Ok this code is not good.
> > Your patch will fix a problem.
> >
> > but "&& !dlg.password().isEmpty()" are you sure that we can't use a server with empty password ?
> >
> > Are you success to reproduce this crash ?
> > Because for me it will not fix these crash because I think that we can add a "ai.username" empty in m_url.setUserName( ai.username ); otherwise it's a big problem in KUrl/QUrl.
> >
> > So ok for this patch but not ok to close associate bug.
> >
> > For me theses bugs it's when we timeout (as reported in 286269)
> >
> > Regards
good points.
I don't know if passwords are always required.
and I also don't know why we get that crash in QUrl
so maybe we can do a check for !dlg.username.isEmpty() only?
I'll make a new patch
- Allen
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/106081/#review17673
-----------------------------------------------------------
On Aug. 18, 2012, 6:02 p.m., Allen Winter wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/106081/
> -----------------------------------------------------------
>
> (Updated Aug. 18, 2012, 6:02 p.m.)
>
>
> Review request for KDEPIM and Laurent Montel.
>
>
> Description
> -------
>
> This is an attempt to fix the crash reported in bugs like https://bugs.kde.org/show_bug.cgi?id=280761
>
> I had the backtrace
>
> #0 0x0000003927a0eebb in raise () from /lib64/libpthread.so.0
> #0 0x0000003927a0eebb in raise () from /lib64/libpthread.so.0
> #1 0x00007f7f6032143f in KCrash::defaultCrashHandler (sig=11) at /data/kde/trunk/KDE/kdelibs/kdeui/util/kcrash.cpp:346
> #2 <signal handler called>
> #3 0x00007f7f62b621a5 in QByteArray::isEmpty() const () from /data/Qt/Qt-4.8/lib/libQtWebKit.so.4
> #4 0x00007f7f5f6a62f8 in QUrlPrivate::parse (this=0x13c4569, parseOptions=QUrlPrivate::ParseAndSet) at io/qurl.cpp:3822
> #5 0x00007f7f5f6a9058 in QUrl::setUserName (this=0x1b2a930, userName=...) at io/qurl.cpp:4589
> #6 0x00007f7f0038d6a2 in KManageSieve::Session::saslInteract (this=0x1b2a920, in=0x1efda50) at /data/kde/trunk/KDE/kdepim/libksieve/kmanagesieve/session.cpp:448
> #7 0x00007f7f0038ce4a in KManageSieve::Session::startAuthentication (this=0x1b2a920) at /data/kde/trunk/KDE/kdepim/libksieve/kmanagesieve/session.cpp:375
> #8 0x00007f7f0038a9cb in KManageSieve::Session::processResponse (this=0x1b2a920, response=..., data=...) at /data/kde/trunk/KDE/kdepim/libksieve/kmanagesieve/session.cpp:194
> #9 0x00007f7f0038a0e0 in KManageSieve::Session::dataReceived (this=0x1b2a920) at /data/kde/trunk/KDE/kdepim/libksieve/kmanagesieve/session.cpp:134
> #10 0x00007f7f0038df8a in KManageSieve::Session::qt_static_metacall (_o=0x1b2a920, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7fffc0dccbb0) at /data/kde/trunk/KDE/kdepim/build-master-gcc/libksieve/kmanagesieve/session.moc:53
> #11 0x00007f7f5f722125 in QMetaObject::activate (sender=0x1a46fb0, m=0x7f7f5fabaea0, local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3547
> #12 0x00007f7f5f781abb in QIODevice::readyRead (this=0x1a46fb0) at .moc/debug-shared/moc_qiodevice.cpp:105
> #13 0x00007f7f5fcbb272 in KTcpSocketPrivate::reemitReadyRead (this=0x1b1dd50) at /data/kde/trunk/KDE/kdelibs/kdecore/network/ktcpsocket.cpp:365
> #14 0x00007f7f5fcba650 in KTcpSocket::qt_static_metacall (_o=0x1a46fb0, _c=QMetaObject::InvokeMetaMethod, _id=12, _a=0x7fffc0dccd30) at /data/kde/trunk/KDE/kdelibs/build-4.10-gcc/kdecore/ktcpsocket.moc:92
> #15 0x00007f7f5f722125 in QMetaObject::activate (sender=0x1b1dd60, m=0x7f7f5fabaea0, local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3547
> #16 0x00007f7f5f781abb in QIODevice::readyRead (this=0x1b1dd60) at .moc/debug-shared/moc_qiodevice.cpp:105
> #17 0x00007f7f6105175f in QSslSocketBackendPrivate::transmit (this=0x1c59070) at ssl/qsslsocket_openssl.cpp:1149
> #18 0x00007f7f6104c805 in QSslSocketPrivate::_q_readyReadSlot (this=0x1c59070) at ssl/qsslsocket.cpp:2205
> #19 0x00007f7f6104d0c7 in QSslSocket::qt_static_metacall (_o=0x1b1dd60, _c=QMetaObject::InvokeMetaMethod, _id=15, _a=0x7fffc0dce080) at .moc/debug-shared/moc_qsslsocket.cpp:98
> #20 0x00007f7f5f722125 in QMetaObject::activate (sender=0x17f8440, m=0x7f7f5fabaea0, local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3547
> #21 0x00007f7f5f781abb in QIODevice::readyRead (this=0x17f8440) at .moc/debug-shared/moc_qiodevice.cpp:105
> #22 0x00007f7f61029059 in QAbstractSocketPrivate::canReadNotification (this=0x1c4f4c0) at socket/qabstractsocket.cpp:654
> #23 0x00007f7f6102f24c in QAbstractSocketPrivate::readNotification (this=0x1c4f4c0) at socket/qabstractsocket_p.h:77
> #24 0x00007f7f61019975 in QAbstractSocketEngine::readNotification (this=0x1b72330) at socket/qabstractsocketengine.cpp:168
> #25 0x00007f7f610376ae in QReadNotifier::event (this=0x14774d0, e=0x7fffc0dce950) at socket/qnativesocketengine.cpp:1151
> #26 0x00007f7f5e425156 in QApplicationPrivate::notify_helper (this=0xff2ba0, receiver=0x14774d0, e=0x7fffc0dce950) at kernel/qapplication.cpp:4557
> #27 0x00007f7f5e422652 in QApplication::notify (this=0x7fffc0dcec90, receiver=0x14774d0, e=0x7fffc0dce950) at kernel/qapplication.cpp:3939
> #28 0x00007f7f602a15de in KApplication::notify (this=0x7fffc0dcec90, receiver=0x14774d0, event=0x7fffc0dce950) at /data/kde/trunk/KDE/kdelibs/kdeui/kernel/kapplication.cpp:311
> #29 0x00007f7f5f7036c0 in QCoreApplication::notifyInternal (this=0x7fffc0dcec90, receiver=0x14774d0, event=0x7fffc0dce950) at kernel/qcoreapplication.cpp:915
> #30 0x00007f7f62b6f47f in QCoreApplication::sendEvent(QObject*, QEvent*) () from /data/Qt/Qt-4.8/lib/libQtWebKit.so.4
> #31 0x00007f7f5f73f7ef in socketNotifierSourceDispatch (source=0xff55f0) at kernel/qeventdispatcher_glib.cpp:110
> #32 0x0000003929247695 in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
> #33 0x00000039292479c8 in ?? () from /lib64/libglib-2.0.so.0
> #34 0x0000003929247a84 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
> #35 0x00007f7f5f7405c3 in QEventDispatcherGlib::processEvents (this=0xfbadf0, flags=...) at kernel/qeventdispatcher_glib.cpp:424
> #36 0x00007f7f5e50133e in QGuiEventDispatcherGlib::processEvents (this=0xfbadf0, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
> #37 0x00007f7f5f700ac0 in QEventLoop::processEvents (this=0x7fffc0dcec00, flags=...) at kernel/qeventloop.cpp:149
>
>
> This addresses bugs 280761 and 286269.
> http://bugs.kde.org/show_bug.cgi?id=280761
> http://bugs.kde.org/show_bug.cgi?id=286269
>
>
> Diffs
> -----
>
> libksieve/kmanagesieve/session.cpp e419263
>
> Diff: http://git.reviewboard.kde.org/r/106081/diff/
>
>
> Testing
> -------
>
>
> Thanks,
>
> Allen Winter
>
>
_______________________________________________
KDE PIM mailing list kde-pim at kde.org
https://mail.kde.org/mailman/listinfo/kde-pim
KDE PIM home page at http://pim.kde.org/
More information about the kde-pim
mailing list