Summary: | file sharing causing error | ||
---|---|---|---|
Product: | [Applications] systemsettings | Reporter: | Stan Perdue <stanperdue> |
Component: | kcm_fileshare | Assignee: | Unassigned bugs mailing-list <unassigned-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | cassianoleal, kde, Regnaron, rubens |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | unspecified | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Stan Perdue
2008-11-02 23:22:47 UTC
I can confirm this bug in KDE-4.1.71 Steps to reproduce: 1) Open dolphin 2) Right click on a folder 3) Go to Share->Configure File sharing 4) Hit add to add another folder 5) See kcmshell4 crash with the backtrace below Application: KDE Control Module (kcmshell4), signal SIGABRT Thread 1 (Thread 0xb62d0700 (LWP 15477)): [KCrash Handler] #5 0xffffe424 in __kernel_vsyscall () #6 0xb659b690 in *__GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 #7 0xb659ced8 in *__GI_abort () at abort.c:88 #8 0xb745032f in qt_message_output (msgType=QtFatalMsg, buf=0xbfc69010 "ASSERT: \"i >= 0 && i < size()\" in file /usr/include/qt4/QtCore/qstring.h, line 652") at global/qglobal.cpp:2108 #9 0xb74503ee in qFatal (msg=0xb7599e7c "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2309 #10 0xb745072f in qt_assert (assertion=0xb7fcd5f5 "i >= 0 && i < size()", file=0xb7fcbc60 "/usr/include/qt4/QtCore/qstring.h", line=652) at global/qglobal.cpp:1878 #11 0xb7f24a0e in KNFSShare::isDirectoryShared (this=0x8166dc0, path=@0x81530c0) at /usr/include/qt4/QtCore/qstring.h:652 #12 0xb4a3fcb0 in PropertiesPage::load (this=0x8153028) at /var/tmp/portage/kde-base/kdenetwork-filesharing-4.1.71/work/kdenetwork-filesharing-4.1.71/filesharing/advanced/propsdlgplugin/propertiespage.cpp:125 #13 0xb4a4006e in PropertiesPage (this=0x8153028, parent=0x812d4a8, items=@0xbfc6b178, enterUrl=true) at /var/tmp/portage/kde-base/kdenetwork-filesharing-4.1.71/work/kdenetwork-filesharing-4.1.71/filesharing/advanced/propsdlgplugin/propertiespage.cpp:94 #14 0xb49f7894 in PropertiesPageDlg (this=0x8115dc8, parent=0x81fa8b8, files= {<QList<KFileItem>> = {{p = {static shared_null = {ref = {_q_value = 2931}, alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0}}, d = 0xbfc6b178}, d = 0xbfc6b178}}, <No data fields>}) at /var/tmp/portage/kde-base/kdenetwork-filesharing-4.1.71/work/kdenetwork-filesharing-4.1.71/filesharing/simple/fileshare.cpp:371 #15 0xb49f7921 in KFileShareConfig::showShareDialog (this=0x81fa8b8, files=@0xbfc6b1ac) at /var/tmp/portage/kde-base/kdenetwork-filesharing-4.1.71/work/kdenetwork-filesharing-4.1.71/filesharing/simple/fileshare.cpp:391 #16 0xb49f7c03 in KFileShareConfig::addShareBtnClicked (this=0x81fa8b8) at /var/tmp/portage/kde-base/kdenetwork-filesharing-4.1.71/work/kdenetwork-filesharing-4.1.71/filesharing/simple/fileshare.cpp:355 #17 0xb49f76cd in KFileShareConfig::qt_metacall (this=0x81fa8b8, _c=QMetaObject::InvokeMetaMethod, _id=3, _a=0xbfc6b2dc) at /var/tmp/portage/kde-base/kdenetwork-filesharing-4.1.71/work/kdenetwork-filesharing_build/filesharing/simple/fileshare.moc:76 #18 0xb75604e1 in QMetaObject::activate (sender=0x8202c18, from_signal_index=<value optimized out>, to_signal_index=30, argv=0xbfc6b2dc) at kernel/qobject.cpp:3028 #19 0xb7560904 in QMetaObject::activate (sender=0x8202c18, m=0xb7106384, from_local_signal_index=2, to_local_signal_index=3, argv=0xbfc6b2dc) at kernel/qobject.cpp:3118 #20 0xb6f359d3 in QAbstractButton::clicked (this=0x8202c18, _t1=false) at .moc/debug-shared/moc_qabstractbutton.cpp:185 #21 0xb6c8d33f in QAbstractButtonPrivate::emitClicked (this=0x815b668) at widgets/qabstractbutton.cpp:544 #22 0xb6c8edda in QAbstractButtonPrivate::click (this=0x815b668) at widgets/qabstractbutton.cpp:537 #23 0xb6c8f003 in QAbstractButton::mouseReleaseEvent (this=0x8202c18, e=0xbfc6b9cc) at widgets/qabstractbutton.cpp:1116 #24 0xb699f5a2 in QWidget::event (this=0x8202c18, event=0xbfc6b9cc) at kernel/qwidget.cpp:7169 #25 0xb6c8d20c in QAbstractButton::event (this=0x8202c18, e=0xbfc6b9cc) at widgets/qabstractbutton.cpp:1078 #26 0xb6d3213a in QPushButton::event (this=0x8202c18, e=0xbfc6b9cc) at widgets/qpushbutton.cpp:658 #27 0xb6946fab in QApplicationPrivate::notify_helper (this=0x8055d68, receiver=0x8202c18, e=0xbfc6b9cc) at kernel/qapplication.cpp:3809 #28 0xb694e438 in QApplication::notify (this=0xbfc6c290, receiver=0x8202c18, e=0xbfc6b9cc) at kernel/qapplication.cpp:3534 #29 0xb7bedf95 in KApplication::notify (this=0xbfc6c290, receiver=0x8202c18, event=0xbfc6b9cc) at /var/tmp/portage/kde-base/kdelibs-4.1.71/work/kdelibs-4.1.71/kdeui/kernel/kapplication.cpp:307 #30 0xb7549b21 in QCoreApplication::notifyInternal (this=0xbfc6c290, receiver=0x8202c18, event=0xbfc6b9cc) at kernel/qcoreapplication.cpp:593 #31 0xb694f879 in QApplicationPrivate::sendMouseEvent (receiver=0x8202c18, event=0xbfc6b9cc, alienWidget=0x8202c18, nativeWidget=0x80f5a88, buttonDown=0xb710cc60, lastMouseReceiver=@0xb710cc64) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:218 #32 0xb69b79e7 in QETWidget::translateMouseEvent (this=0x80f5a88, event=0xbfc6bed8) at kernel/qapplication_x11.cpp:4048 #33 0xb69b631e in QApplication::x11ProcessEvent (this=0xbfc6c290, event=0xbfc6bed8) at kernel/qapplication_x11.cpp:3044 #34 0xb69dc96d in QEventDispatcherX11::processEvents (this=0x8055ea0, flags={i = -1077493896}) at kernel/qeventdispatcher_x11.cpp:134 #35 0xb75486b0 in QEventLoop::processEvents (this=0xbfc6bfec, flags={i = -1077493832}) at kernel/qeventloop.cpp:149 #36 0xb7548852 in QEventLoop::exec (this=0xbfc6bfec, flags={i = -1077493772}) at kernel/qeventloop.cpp:200 #37 0xb6db2a71 in QDialog::exec (this=0x80f5a88) at dialogs/qdialog.cpp:453 #38 0xb804c707 in kdemain (_argc=2, _argv=0xbfc6c4e4) at /var/tmp/portage/kde-base/kcmshell-4.1.71/work/kcmshell-4.1.71/kcmshell/main.cpp:275 #39 0x08048862 in main (argc=) at /var/tmp/portage/kde-base/kcmshell-4.1.71/work/kcmshell_build/kcmshell/kcmshell4_dummy.cpp:3 *** Bug 178494 has been marked as a duplicate of this bug. *** reproduced here too with kde 4.2 beta2 i am trying to fix it, i hope to post a patch soon This patch fixes the crash for me. Can i commmit it ? --- kio/kio/knfsshare.cpp.orig 2009-01-04 20:18:07.000000000 +0100 +++ kio/kio/knfsshare.cpp 2009-01-04 20:33:20.000000000 +0100 @@ -183,8 +183,11 @@ bool KNFSShare::isDirectoryShared( const QString & path ) const { + kDebug(7000) << "Path Shared dir:" << path; QString fixedPath = path; - if ( path[path.length()-1] != '/' ) + kDebug(7000) << "fixedPath Shared dir:" << fixedPath; + + if ( !path.isEmpty() && path[path.length()-1] != '/' ) fixedPath += '/'; return d->sharedPaths.contains(fixedPath); --- kio/kio/ksambashare.cpp~ 2008-08-20 21:54:05.000000000 +0200 +++ kio/kio/ksambashare.cpp 2009-01-04 23:43:56.000000000 +0100 @@ -213,7 +213,7 @@ bool KSambaShare::isDirectoryShared( const QString & path ) const { QString fixedPath = path; - if ( path[path.length()-1] != '/' ) + if ( !path.isEmpty() && path[path.length()-1] != '/' ) fixedPath += '/'; return d->sharedPaths.contains(fixedPath); without the debugs of course if i commit :) SVN commit 906244 by nlecureuil: Fix crash when using advanced file sharing dialog BUG:174126 M +1 -1 knfsshare.cpp M +1 -1 ksambashare.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=906244 *** Bug 181388 has been marked as a duplicate of this bug. *** |