Bug 284892 - Manualy change the value in a gui instad of the arrows get a crash
Summary: Manualy change the value in a gui instad of the arrows get a crash
Status: RESOLVED FIXED
Alias: None
Product: plasma4
Classification: Plasma
Component: widget-comic (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Matthias Fuchs
URL:
Keywords:
: 289466 (view as bug list)
Depends on:
Blocks:
 
Reported: 2011-10-24 18:57 UTC by orleans
Modified: 2011-12-20 23:05 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 4.7.4


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description orleans 2011-10-24 18:57:25 UTC
Application: plasma-desktop (0.4)
KDE Platform Version: 4.7.2 (4.7.2)
Qt Version: 4.7.4
Operating System: Linux 3.0.0-13-generic x86_64
Distribution: Ubuntu 11.10

-- Information about the crash:
Manualy change the value in a gui instad of the arrows get a crash after pressing the Tab key could not reproduce that. 
Plasmoid "comic"

-- Backtrace:
Application: Plasma-Desktop-Umgebung (plasma-desktop), signal: Segmentation fault
[Current thread is 1 (Thread 0x7f1a08d3e7c0 (LWP 1882))]

Thread 8 (Thread 0x7f19dea79700 (LWP 1893)):
#0  0x00007f1a0863aa97 in pthread_mutex_lock (mutex=0x2a80028) at forward.c:182
#1  0x00007f19fcbabfcc in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f19fcbac429 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f1a05812f3e in QEventDispatcherGlib::processEvents (this=0x2a76b70, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#4  0x00007f1a057e6cf2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007f1a057e6ef7 in QEventLoop::exec (this=0x7f19dea78cd0, flags=...) at kernel/qeventloop.cpp:201
#6  0x00007f1a056fe27f in QThread::exec (this=<optimized out>) at thread/qthread.cpp:498
#7  0x00007f1a057c9cbf in QInotifyFileSystemWatcherEngine::run (this=0x2a74f30) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007f1a05700d05 in QThreadPrivate::start (arg=0x2a74f30) at thread/qthread_unix.cpp:331
#9  0x00007f19f9ec556c in ?? () from /usr/lib/nvidia-current/libGL.so.1
#10 0x00007f19fd6b8efc in start_thread (arg=0x7f19dea79700) at pthread_create.c:304
#11 0x00007f1a0862c89d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#12 0x0000000000000000 in ?? ()

Thread 7 (Thread 0x7f19d7fff700 (LWP 1894)):
#0  0xffffffffff60017b in ?? ()
#1  0x00007f19d7ffe9f0 in ?? ()
#2  0x00007fff275ff7e7 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 6 (Thread 0x7f19d4db0700 (LWP 1921)):
#0  0x00007f19fcbabe53 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007f19fcbac792 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f19d588e516 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#3  0x00007f19fcbd12b6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f19f9ec556c in ?? () from /usr/lib/nvidia-current/libGL.so.1
#5  0x00007f19fd6b8efc in start_thread (arg=0x7f19d4db0700) at pthread_create.c:304
#6  0x00007f1a0862c89d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7f19d149c700 (LWP 1926)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f1a03cbac2c in ?? () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4
#2  0x00007f1a03cbad59 in ?? () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4
#3  0x00007f19f9ec556c in ?? () from /usr/lib/nvidia-current/libGL.so.1
#4  0x00007f19fd6b8efc in start_thread (arg=0x7f19d149c700) at pthread_create.c:304
#5  0x00007f1a0862c89d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7f19d0c9b700 (LWP 1927)):
#0  0xffffffffff60017b in ?? ()
#1  0x00007f19d0c9aa70 in ?? ()
#2  0x00007fff275ff7e7 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 3 (Thread 0x7f19ce979700 (LWP 1930)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f1a02817fe2 in ?? () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#2  0x00007f1a02818019 in ?? () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#3  0x00007f19f9ec556c in ?? () from /usr/lib/nvidia-current/libGL.so.1
#4  0x00007f19fd6b8efc in start_thread (arg=0x7f19ce979700) at pthread_create.c:304
#5  0x00007f1a0862c89d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f19c4acb700 (LWP 1963)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f1a057011ab in wait (time=18446744073709551615, this=0x3d15240) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x1dfe7f0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00007f19e9b4ef5d in ?? () from /usr/lib/python2.7/dist-packages/PyQt4/QtCore.so
#4  0x00007f19ea7dd6f5 in PyEval_EvalFrameEx () from /usr/lib/libpython2.7.so.1.0
#5  0x00007f19ea7def05 in PyEval_EvalCodeEx () from /usr/lib/libpython2.7.so.1.0
#6  0x00007f19ea761a1c in ?? () from /usr/lib/libpython2.7.so.1.0
#7  0x00007f19ea7391f3 in PyObject_Call () from /usr/lib/libpython2.7.so.1.0
#8  0x00007f19ea74694f in ?? () from /usr/lib/libpython2.7.so.1.0
#9  0x00007f19ea7391f3 in PyObject_Call () from /usr/lib/libpython2.7.so.1.0
#10 0x00007f19ea7d7807 in PyEval_CallObjectWithKeywords () from /usr/lib/libpython2.7.so.1.0
#11 0x00007f19e9897f22 in ?? () from /usr/lib/python2.7/dist-packages/sip.so
#12 0x00007f19e9b376f0 in ?? () from /usr/lib/python2.7/dist-packages/PyQt4/QtCore.so
#13 0x00007f19e9b6a137 in ?? () from /usr/lib/python2.7/dist-packages/PyQt4/QtCore.so
#14 0x00007f1a05700d05 in QThreadPrivate::start (arg=0x3948f20) at thread/qthread_unix.cpp:331
#15 0x00007f19f9ec556c in ?? () from /usr/lib/nvidia-current/libGL.so.1
#16 0x00007f19fd6b8efc in start_thread (arg=0x7f19c4acb700) at pthread_create.c:304
#17 0x00007f1a0862c89d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#18 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f1a08d3e7c0 (LWP 1882)):
[KCrash Handler]
#6  0x0000002000000020 in ?? ()
#7  0x00007f19eb29e1a9 in ComicApplet::updateUsedComics (this=0x25e5880) at ../../../applets/comic/comic.cpp:675
#8  0x00007f19eb2a245d in ComicApplet::applyConfig (this=0x25e5880) at ../../../applets/comic/comic.cpp:598
#9  0x00007f19eb2a419c in ComicApplet::qt_metacall (this=0x25e5880, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff275ca590) at ./comic.moc:136
#10 0x00007f1a057faeba in QMetaObject::activate (sender=0x271d730, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3278
#11 0x00007f1a063ecd2e in KDialog::slotButtonClicked (this=0x271d730, button=8) at ../../kdeui/dialogs/kdialog.cpp:888
#12 0x00007f1a063ed2d2 in KDialog::qt_metacall (this=0x271d730, _c=QMetaObject::InvokeMetaMethod, _id=33, _a=0x7fff275ca7c0) at ./kdialog.moc:190
#13 0x00007f1a064c4060 in KPageDialog::qt_metacall (this=0x271d730, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff275ca7c0) at ./kpagedialog.moc:70
#14 0x00007f1a063dcb60 in KConfigDialog::qt_metacall (this=0x271d730, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff275ca7c0) at ./kconfigdialog.moc:84
#15 0x00007f1a0811af50 in Plasma::AppletConfigDialog::qt_metacall (this=0x271d730, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff275ca7c0) at ./private/applet_p.moc:69
#16 0x00007f1a057faeba in QMetaObject::activate (sender=0x676d770, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff275ca7c0) at kernel/qobject.cpp:3278
#17 0x00007f1a0580108e in QSignalMapper::mapped (this=<optimized out>, _t1=8) at .moc/release-shared/moc_qsignalmapper.cpp:101
#18 0x00007f1a0580162b in QSignalMapper::map (this=0x676d770, sender=0x307fdc0) at kernel/qsignalmapper.cpp:266
#19 0x00007f1a05801a80 in QSignalMapper::qt_metacall (this=0x676d770, _c=QMetaObject::InvokeMetaMethod, _id=4, _a=0x7fff275ca910) at .moc/release-shared/moc_qsignalmapper.cpp:87
#20 0x00007f1a057faeba in QMetaObject::activate (sender=0x307fdc0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff275ca910) at kernel/qobject.cpp:3278
#21 0x00007f1a05209582 in QAbstractButton::clicked (this=<optimized out>, _t1=false) at .moc/release-shared/moc_qabstractbutton.cpp:206
#22 0x00007f1a04f4f13e in QAbstractButtonPrivate::emitClicked (this=<optimized out>) at widgets/qabstractbutton.cpp:546
#23 0x00007f1a04f5047b in QAbstractButtonPrivate::click (this=0x5bb3270) at widgets/qabstractbutton.cpp:539
#24 0x00007f1a04f506ec in QAbstractButton::mouseReleaseEvent (this=0x307fdc0, e=0x7fff275cb020) at widgets/qabstractbutton.cpp:1121
#25 0x00007f1a04be8c9a in QWidget::event (this=0x307fdc0, event=0x7fff275cb020) at kernel/qwidget.cpp:8295
#26 0x00007f1a04b98424 in notify_helper (e=0x7fff275cb020, receiver=0x307fdc0, this=0x1705590) at kernel/qapplication.cpp:4486
#27 QApplicationPrivate::notify_helper (this=0x1705590, receiver=0x307fdc0, e=0x7fff275cb020) at kernel/qapplication.cpp:4458
#28 0x00007f1a04b9dc6b in QApplication::notify (this=<optimized out>, receiver=0x307fdc0, e=0x7fff275cb020) at kernel/qapplication.cpp:4047
#29 0x00007f1a06496126 in KApplication::notify (this=0x16f40c0, receiver=0x307fdc0, event=0x7fff275cb020) at ../../kdeui/kernel/kapplication.cpp:311
#30 0x00007f1a057e7afc in QCoreApplication::notifyInternal (this=0x16f40c0, receiver=0x307fdc0, event=0x7fff275cb020) at kernel/qcoreapplication.cpp:787
#31 0x00007f1a04b993f2 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#32 QApplicationPrivate::sendMouseEvent (receiver=0x307fdc0, event=0x7fff275cb020, alienWidget=0x307fdc0, nativeWidget=0x271d730, buttonDown=0x307fdc0, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3146
#33 0x00007f1a04c18945 in QETWidget::translateMouseEvent (this=0x271d730, event=<optimized out>) at kernel/qapplication_x11.cpp:4568
#34 0x00007f1a04c178be in QApplication::x11ProcessEvent (this=0x16f40c0, event=0x7fff275cb840) at kernel/qapplication_x11.cpp:3690
#35 0x00007f1a04c40412 in x11EventSourceDispatch (s=0x170b900, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#36 0x00007f19fcbaba5d in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#37 0x00007f19fcbac258 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#38 0x00007f19fcbac429 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#39 0x00007f1a05812ed6 in QEventDispatcherGlib::processEvents (this=0x1647f40, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:422
#40 0x00007f1a04c4007e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=<optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#41 0x00007f1a057e6cf2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#42 0x00007f1a057e6ef7 in QEventLoop::exec (this=0x7fff275cbc10, flags=...) at kernel/qeventloop.cpp:201
#43 0x00007f1a057eb789 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1064
#44 0x00007f1a0892b1a3 in kdemain (argc=1, argv=0x7fff275cbff8) at ../../../../plasma/desktop/shell/main.cpp:120
#45 0x00007f1a0856c30d in __libc_start_main (main=0x400640 <main(int, char**)>, argc=1, ubp_av=0x7fff275cbff8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fff275cbfe8) at libc-start.c:226
#46 0x0000000000400671 in _start ()

Possible duplicates by query: bug 247501.

Reported using DrKonqi
Comment 1 Matthias Fuchs 2011-10-25 18:12:22 UTC
Could you please describe in more detail what you actually did.
E.g. what do you mean with "Manualy change the value in a gui"?
Comment 2 Matthias Fuchs 2011-10-25 18:35:09 UTC
Another thing: Do you know if a comic strip was already displayed before you clicked Ok?
Comment 3 orleans 2011-10-26 19:10:36 UTC
I have 9 comics loaded.
in the settings I was trying to change the time value between refreshes.
default some where arount 20 because I did not want to wait until 200 with picking on the arrows, I entered the number manually. after pressing the tab key a crash was born.

I tryed it on a later time again the numbers every time changed after setting manually 200 to "never". so I clicket as long on the Arrow until it views 200, that worked.
Comment 4 Matthias Fuchs 2011-11-13 17:06:24 UTC
Sorry, I overlooked your reply. Now I am finally able to reproduce this issue and hopefully I'll be able to fix the bug once I find some time.


Notes to myself:
*For some reason entering numbers for e.g. "Check new comic strips" manually does not work --> pressing tab changes the entered number to never

Steps to reproduce that seem to always work:
1. use plasmoidviewer comic
2. go to configuration and _enter_ a number via the keyboard at the "Check new comic strips"
3. press TAB (number should change to "never")
4. Click "Ok"
5. click again on the configuration button
6. Change the "Check new comic strips" via the mouse (clicking the up button)
7. Press "Ok", the crash should happen
Comment 5 Matthias Fuchs 2011-11-13 20:05:10 UTC
Git commit 5e6e56e5249d1f0215b59d798e27b09b15d44fbc by Matthias Fuchs.
Committed on 13/11/2011 at 21:04.
Pushed by mfuchs into branch 'KDE/4.7'.

Set pointer to 0 after deleting.

BUG:284892

M  +1    -0    applets/comic/comic.cpp

http://commits.kde.org/kdeplasma-addons/5e6e56e5249d1f0215b59d798e27b09b15d44fbc
Comment 6 Matthias Fuchs 2011-11-13 20:06:09 UTC
Git commit 371707d37744ddb92b9d617e00af0f62b8a92b56 by Matthias Fuchs.
Committed on 13/11/2011 at 21:04.
Pushed by mfuchs into branch 'master'.

Set pointer to 0 after deleting.

BUG:284892
(cherry picked from commit 5e6e56e5249d1f0215b59d798e27b09b15d44fbc)

M  +1    -0    applets/comic/comic.cpp

http://commits.kde.org/kdeplasma-addons/371707d37744ddb92b9d617e00af0f62b8a92b56
Comment 7 Matthias Fuchs 2011-11-13 20:07:44 UTC
The commits above fix the crash, but not the issue that pressing Tab resets your input. For that follow bug #286523
Comment 8 Matthias Fuchs 2011-11-13 20:27:53 UTC
Git commit 7c71b3410522747a1cb8be3d6c9e1d551b2f0790 by Matthias Fuchs.
Committed on 13/11/2011 at 21:26.
Pushed by mfuchs into branch 'KDE/4.7'.

Uses QSpinBox to work around BUG: 286523

CCBUG:284892

M  +1    -8    applets/comic/advancedsettings.ui
M  +2    -7    applets/comic/comicSettings.ui
M  +2    -7    applets/comic/comicarchivedialog.ui

http://commits.kde.org/kdeplasma-addons/7c71b3410522747a1cb8be3d6c9e1d551b2f0790
Comment 9 Matthias Fuchs 2011-11-13 20:28:21 UTC
Git commit 52534f225b9ad97da077c517939b5716d7b358d7 by Matthias Fuchs.
Committed on 13/11/2011 at 21:26.
Pushed by mfuchs into branch 'master'.

Uses QSpinBox to work around BUG: 286523

CCBUG:284892
(cherry picked from commit 7c71b3410522747a1cb8be3d6c9e1d551b2f0790)

M  +1    -8    applets/comic/advancedsettings.ui
M  +2    -7    applets/comic/comicSettings.ui
M  +2    -7    applets/comic/comicarchivedialog.ui

http://commits.kde.org/kdeplasma-addons/52534f225b9ad97da077c517939b5716d7b358d7
Comment 10 Jekyll Wu 2011-12-20 23:05:45 UTC
*** Bug 289466 has been marked as a duplicate of this bug. ***