Summary: | klipper breaks if i have enough entries to make "More >" sub-menu visible | ||
---|---|---|---|
Product: | [Unmaintained] klipper | Reporter: | Pavel Volkovitskiy <olfway> |
Component: | general | Assignee: | Esben Mose Hansen <kde> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | datradan, Lzerofreak, mail, mwoehlke.floss, nofnick, oded, siegerstein, sz8lnp, tom, uwolfer |
Priority: | NOR | ||
Version: | 4.0 | ||
Target Milestone: | --- | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: |
Backtrace
Klipper.png klipper2.png Klipper3.png klipper crash backtrace patch that fixes it patch that fixes it, 2th try |
Description
Pavel Volkovitskiy
2008-01-06 19:15:47 UTC
I'm confirming this bug still exists Created attachment 22874 [details]
Backtrace
Backtrace. I can see if I can generate one with Qt-debug symbols, if needed.
r757829, from branches/4.o
*** Bug 156617 has been marked as a duplicate of this bug. *** *** Bug 156996 has been marked as a duplicate of this bug. *** Over here also, this bug exists, added a png. Sorry, bug in koqueror prevents me to send the png, try it with FF. Created attachment 23973 [details]
Klipper.png
Page in Konqueror is not displayed properly, as i see in FF.
KDE Version v0.9.7 (KDE 4.00.66 (KDE 4.0.66 >= 20080313) "release 6.1", compiled sources) Application Cut &amp; Paste History Utility Operating System Linux (x86_64) release 2.6.25-rc5-git3-6-default Compiler gcc Misformed, sometimes 'full' screen, multiple same entrances, crashes every now and then. Pasted some info from Konq. Created attachment 23974 [details]
klipper2.png
Created attachment 23975 [details]
Klipper3.png
*** Bug 159303 has been marked as a duplicate of this bug. *** Here, too. Confirming the bug... Most interesting bits of my backtrace for people that don't want to open the attachment :-) (also because I have more debug info than the existing attachment). The index looks suspicious... Application: Klipper (klipper), signal SIGABRT #6 0x00002aaaab3f773c in qt_message_output (msgType=QtFatalMsg, buf=0x7fff6ec960e0 "ASSERT failure in QList<T>::at: \"index out of range\", file /usr/local/qt4-copy/include/QtCore/qlist.h, line 393") at /usr/local/src/kde/svn/trunk/qt-copy/src/corelib/global/qglobal.cpp:2058 #7 0x00002aaaab3f784b in qFatal ( msg=0x2aaaab53e2f8 "ASSERT failure in %s: \"%s\", file %s, line %d") at /usr/local/src/kde/svn/trunk/qt-copy/src/corelib/global/qglobal.cpp:2260 #8 0x00002aaaab3f7888 in qt_assert_x (where=0x2aaaaaad883e "QList<T>::at", what=0x2aaaaaad882b "index out of range", file=0x2aaaaaad8800 "/usr/local/qt4-copy/include/QtCore/qlist.h", line=393) at /usr/local/src/kde/svn/trunk/qt-copy/src/corelib/global/qglobal.cpp:1836 #9 0x00002aaaaaad390a in QList<QAction*>::indexOf (this=0x189aaad883e, t=@0x2aaaab3f7888, from=32767) at /usr/local/qt4-copy/include/QtCore/qlist.h:621 #10 0x00002aaaaaad4242 in PopupProxy::tryInsertItem (this=0x709ce0, item=0x9b47d0, remainingHeight=@0x7fff6ec9836c, index=0) at /usr/local/src/kde/svn/trunk/kdebase/workspace/klipper/popupproxy.cpp:95 #11 0x00002aaaaaad43fe in PopupProxy::tryInsertItem (this=0x9a9af8, item=0x200000000, remainingHeight=@0x100000000726a18, index=0) at /usr/local/src/kde/svn/trunk/kdebase/workspace/klipper/popupproxy.cpp:108 #12 0x00002aaaaaad4584 in PopupProxy::insertFromSpill (this=0x33874f39, index=9) at /usr/local/src/kde/svn/trunk/kdebase/workspace/klipper/popupproxy.cpp:145 #13 0x00002aaaaaad45e3 in PopupProxy::insertFromSpill (this=0x2aaaab3fb53b, index=32767) at /usr/local/src/kde/svn/trunk/kdebase/workspace/klipper/popupproxy.cpp:151 #14 0x00002aaaab50065b in QMetaObject::activate (sender=0x9b5eb0, from_signal_index=27, to_signal_index=27, argv=0x0) at /usr/local/src/kde/svn/trunk/qt-copy/src/corelib/kernel/qobject.cpp:3007 #15 0x00002aaaab500abf in QMetaObject::activate (sender=0x9b5eb0, m=0x2aaaac929360, local_signal_index=0, argv=0x0) at /usr/local/src/kde/svn/trunk/qt-copy/src/corelib/kernel/qobject.cpp:3080 #16 0x00002aaaac332392 in QMenu::aboutToShow (this=0x9b5eb0) at .moc/debug-shared/moc_qmenu.cpp:143 #17 0x00002aaaac3369f4 in QMenu::popup (this=0x9b5eb0, p=@0x7fff6ec987c0, atAction=0x0) at /usr/local/src/kde/svn/trunk/qt-copy/src/gui/widgets/qmenu.cpp:1726 #18 0x00002aaaac337fda in QMenu::internalDelayedPopup (this=0x70c1f0) at /usr/local/src/kde/svn/trunk/qt-copy/src/gui/widgets/qmenu.cpp:2838 #19 0x00002aaaac339e0a in QMenu::timerEvent (this=0x70c1f0, e=0x7fff6ec99460) at /usr/local/src/kde/svn/trunk/qt-copy/src/gui/widgets/qmenu.cpp:2687 The index looks suspecious? How about this one: remainingHeight= 0x7fff6ec9836c As I recall, the remaining height is the number of pixels still available in the popup. Unless the reporter is using a nearby planet as a screen, I think we are seeing a corruption here. No planets, but I *do* have three Xinerama screens... I wonder if that might have anything to do with it? (My panel, systray, and therefore Klipper, is on the middle one, with all three laid out in a horizontal row.) Maybe a few of the other people experiencing this could report if they are also using Xinerama? If you can reproduce it with any regularity, and if you have the patience for it, and the ability....you could try to run it under valgrind, and attach the result here. It might well pinpoint the problem. If you have no idea what I am going on about, ignore me :) Hi, this happens to me too; I just tried limiting the history size to avoid the need of a "More >" menu (I set it to 20 entries), but klipper goes on storing entries even after the 20th. Then, the entries from the 21st on do not work, if I click on one of them another one gets selected instead. The "More >" menu gets displayed even before it's necessary and appears multiple times along the history (as already pointed out in other reports before). When cleaning clipboard history the first entry becomes <empty clipboard> but some other entries remain (a lot of "More" and the entries which before exceeded the 20th-and-sould-be-last entry). When I finally click on "More >" (the one with the arrow on the right) it crashes: ASSERT failure in QList<T>::at: "index out of range", file /usr/include/QtCore/qlist.h, line 391 I'm using Fedora 9, klipper is v.0.9.7 on KDE 4.0.3 Cheers. Adding myself to be informed about this bug. Same case with gcc; fc9 ; kde4.0.4. I confirm this bug too, fc9 ; kde4.0.5 very annoying stuff as I use klipper intensively Created attachment 25593 [details]
klipper crash backtrace
Comment on attachment 25593 [details]
klipper crash backtrace
I have it too :) ( :( )
hope my crash log could help
I also have this problem. Its a huge bummer because klipper is an NB tool and doesn't work very well at all because of this. Created attachment 26251 [details]
patch that fixes it
attached patch fixes the assert (first item in a submenu) and a crash that
happens later (expired items).
Urs:
could you please review or take a quik look at the patch? I ask since the logs
say, that you are more into that part of the code then me :) thanks in advance.
Sebastian: After having a short look at it, it seems to look good. Nice to have this showstopper (for some people) fixed. :) Sebastian: Btw, does it also fix #165154? *** Bug 163471 has been marked as a duplicate of this bug. *** would be great if you can let know how to apply the patch. Created attachment 26255 [details] patch that fixes it, 2th try Updated patch. the prev one still had probs with multiple "More" submenus. and it does NOT fix bug #165154 :-/ though my backtrace looks like; Application: Klipper (klipper), signal SIGSEGV 0x00007fb13533db50 in nanosleep () from /lib/libc.so.6 Thread 1 (Thread 0x7fb13a701780 (LWP 31048)): [KCrash Handler] #5 0x00007fb137be77dd in QFlags<Qt::WindowType>::operator& (this=0x6c0070002f0080, f=Qt::WindowType_Mask) at ../../include/QtCore/../../src/corelib/global/qglobal.h:1941 #6 0x00007fb137be7816 in QWidget::windowType (this=0x72ee50) at ../../include/QtGui/../../src/gui/kernel/qwidget.h:884 #7 0x00007fb137c55a4b in QETWidget::translateMouseEvent (this=0x72ee50, event=0x7fff42738480) at kernel/qapplication_x11.cpp:4084 #8 0x00007fb137c53520 in QApplication::x11ProcessEvent (this=0x7fff427388a0, event=0x7fff42738480) at kernel/qapplication_x11.cpp:3133 #9 0x00007fb137c7f5e5 in x11EventSourceDispatch (s=0x629340, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:148 #10 0x00007fb134125262 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #11 0x00007fb134128516 in ?? () from /usr/lib/libglib-2.0.so.0 #12 0x00007fb1341289af in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0 #13 0x00007fb13992df5c in QEventDispatcherGlib::processEvents (this=0x619040, flags=@0x7fff42738700) at kernel/qeventdispatcher_glib.cpp:325 #14 0x00007fb137c7edf7 in QGuiEventDispatcherGlib::processEvents (this=0x619040, flags=@0x7fff42738760) at kernel/qguieventdispatcher_glib.cpp:204 #15 0x00007fb1398fce84 in QEventLoop::processEvents (this=0x7fff42738820, flags=@0x7fff427387e0) at kernel/qeventloop.cpp:149 #16 0x00007fb1398fd080 in QEventLoop::exec (this=0x7fff42738820, flags=@0x7fff42738840) at kernel/qeventloop.cpp:196 #17 0x00007fb139900584 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:845 @tom: download the patch, cd /your/source/dir/to/kdebase/workspace/klipper && patch -p0 < /path/to/patchfile.patch && recompile fixed in trunk with r835199 and in the 4.1-branch with r835200. see also bug #165154 that the top-level "More" menuitem jumps after clicking an item from the bottom-position to a position in the middle (or to be more exact all items displayed after it are not corrected cleared within the top-level menu) is another issue and not a regression of the commit above ;) Thanks for the feedback! the in comment #27 named "jumps around" is fixed now too in trunk with r835208 and in the 4.1-branch with r835209. *** Bug 167137 has been marked as a duplicate of this bug. *** I'm 167137 bug reporter, and my bug has been marked by Pino Toscano as a duplicate of this (resolved) bug. But in Klipper 0.9.7 on KDE 4.0.98 (KDE 4.1 RC1), this bug still exist. > But in Klipper 0.9.7 on KDE 4.0.98 (KDE 4.1 RC1), this bug still exist. Reading comment #28 may help: the bug was fixed yesterday, of course it cannot be in an already released version. > Reading comment #28 may help: the bug was fixed yesterday, of course it cannot be in an already released version.
Ok, I'm sorry...
Thanks to KDE developers for the fix of this bug! :-)
|