Package: qgit Severity: important Version: 2.7-2 Dear maintainers,
The following procedure could crash qgit: 1. clone linux kernel git repository with argument "--depth 1000" to make a shallow copy 2. invoke qgit inside the repository 3. scroll down the commit list Backtrace: Thread 1 "qgit" received signal SIGSEGV, Segmentation fault. __strcmp_sse2_unaligned () at ../sysdeps/x86_64/multiarch/strcmp-sse2-unaligned.S:32 32 ../sysdeps/x86_64/multiarch/strcmp-sse2-unaligned.S: 没有那个文件或目录. (gdb) bt full #0 __strcmp_sse2_unaligned () at ../sysdeps/x86_64/multiarch/strcmp-sse2-unaligned.S:32 No locals. #1 0x00005555555defb2 in ShaString::operator== (o=..., this=0x555577addbf8) at ./src/common.h:291 No locals. #2 QHashNode<ShaString, RevFile const*>::same_key (key0=..., h0=967075802, this=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qhash.h:156 h0 = 967075802 key0 = @0x555577addbf8: {<QLatin1String> = {m_size = 40, m_data = 0x555559368dd0 "3e4543bf20531d1cdb8672d25b3f2ff6d3d07627"}, <No data fields>} this = <optimized out> #3 QHash<ShaString, RevFile const*>::findNode (h=967075802, akey=..., this=0x555555a50948) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qhash.h:905 node = 0x5555582631d0 #4 QHash<ShaString, RevFile const*>::findNode (this=this@entry=0x555555a50948, akey=..., ahp=ahp@entry=0x0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qhash.h:924 h = 967075802 #5 0x00005555555d89f6 in QHash<ShaString, RevFile const*>::contains (akey=..., this=0x555555a50948) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qhash.h:894 No locals. #6 Git::loadFileNames (this=0x555555a50890) at ./src/git.cpp:2499 it = 0x555577addbf8 revCnt = 34 diffTreeBuf = {static null = {<No data fields>}, d = 0x555582254500} #7 0x00007ffff69f8d55 in QMetaObject::activate (sender=sender@entry=0x55557def2610, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at kernel/qobject.cpp:3766 method_relative = 10 callFunction = 0x55555562ca10 <Git::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)> receiver = 0x555555a50890 receiverInSameThread = <optimized out> sw = {receiver = 0x555555a50890, previousSender = 0x0, currentSender = {sender = 0x55557def2610, signal = 3, ref = 1}, switched = true} c = 0x555555f61240 last = 0x555555f61240 locker = {val = 140737335435648} connectionLists = {connectionLists = 0x55555f80c870} list = <optimized out> currentThreadId = 0x7ffff7f99f40 signal_index = 3 empty_argv = {0x0} #8 0x00007ffff69f9427 in QMetaObject::activate (sender=sender@entry=0x55557def2610, m=m@entry=0x7ffff6e23f20 <QSingleShotTimer::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at kernel/qobject.cpp:3628 No locals. #9 0x00007ffff6a05913 in QSingleShotTimer::timeout (this=0x55557def2610) at .moc/qtimer.moc:126 No locals. #10 QSingleShotTimer::timerEvent (this=0x55557def2610) at kernel/qtimer.cpp:321 No locals. #11 0x00007ffff69f987b in QObject::event (this=0x55557def2610, e=<optimized out>) at kernel/qobject.cpp:1268 No locals. #12 0x00007ffff76e663c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 No symbol table info available. #13 0x00007ffff76edf04 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 No symbol table info available. #14 0x00007ffff69ca258 in QCoreApplication::notifyInternal2 (receiver=0x55557def2610, event=event@entry=0x7fffffffdb20) at kernel/qcoreapplication.cpp:1018 selfRequired = true result = false cbdata = {0x55557def2610, 0x7fffffffdb20, 0x7fffffffda9f} d = <optimized out> threadData = 0x555555890670 scopeLevelCounter = {threadData = 0x555555890670} #15 0x00007ffff6a2258e in QCoreApplication::sendEvent (event=0x7fffffffdb20, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:233 No locals. #16 QTimerInfoList::activateTimers (this=this@entry=0x5555558dfd50) at kernel/qtimerinfo_unix.cpp:643 e = {<QEvent> = {_vptr.QEvent = 0x7ffff6e23770 <vtable for QTimerEvent+16>, static staticMetaObject = {d = {superdata = 0x0, stringdata = 0x7ffff6b30260 <qt_meta_stringdata_QEvent>, data = 0x7ffff6b2fca0 <qt_meta_data_QEvent>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}, d = 0x0, t = 1, posted = 0, spont = 0, m_accept = 1, reserved = 8191}, id = 66} currentTimerInfo = 0x0 n_act = 1 maxCount = <optimized out> currentTime = {tv_sec = 7222, tv_nsec = 939456283} #17 0x00007ffff6a22d51 in timerSourceDispatch (source=source@entry=0x5555558dfcf0) at kernel/qeventdispatcher_glib.cpp:182 timerSource = 0x5555558dfcf0 #18 0x00007ffff3d51287 in g_main_dispatch (context=0x7fffe4004ff0) at ../../../../glib/gmain.c:3177 dispatch = 0x7ffff6a22d30 <timerSourceDispatch(GSource*, GSourceFunc, gpointer)> prev_source = 0x0 was_in_call = 0 user_data = 0x0 callback = 0x0 cb_funcs = <optimized out> cb_data = 0x0 need_destroy = <optimized out> source = 0x5555558dfcf0 current = 0x5555558dcb10 i = 1 #19 g_main_context_dispatch (context=context@entry=0x7fffe4004ff0) at ../../../../glib/gmain.c:3830 No locals. #20 0x00007ffff3d514c0 in g_main_context_iterate (context=context@entry=0x7fffe4004ff0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../../glib/gmain.c:3903 max_priority = 0 timeout = 0 some_ready = 1 nfds = <optimized out> allocated_nfds = 12 fds = 0x55557defa670 #21 0x00007ffff3d5154c in g_main_context_iteration (context=0x7fffe4004ff0, may_block=may_block@entry=1) at ../../../../glib/gmain.c:3964 retval = <optimized out> #22 0x00007ffff6a230ef in QEventDispatcherGlib::processEvents (this=0x5555558d4720, flags=...) at kernel/qeventdispatcher_glib.cpp:423 d = 0x5555558d4060 canWait = true savedFlags = {i = 0} result = <optimized out> #23 0x00007ffff69c82aa in QEventLoop::exec (this=this@entry=0x7fffffffdd70, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212 d = 0x5555559ca630 locker = {val = 93824995624832} ref = {d = 0x5555559ca630, locker = @0x7fffffffdcf8, exceptionCaught = true} #24 0x00007ffff69d1214 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1291 threadData = 0x555555890670 eventLoop = {<QObject> = {_vptr.QObject = 0x7ffff6e23508 <vtable for QEventLoop+16>, static staticMetaObject = {d = {superdata = 0x0, stringdata = 0x7ffff6b34780 <qt_meta_stringdata_QObject>, data = 0x7ffff6b34660 <qt_meta_data_QObject>, static_metacall = 0x7ffff6a00710 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x5555559ca630}, static staticQtMetaObject = {d = {superdata = 0x0, stringdata = 0x7ffff6b37500 <qt_meta_stringdata_Qt>, data = 0x7ffff6b348a0 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = 0x7ffff6e1bbc0 <QObject::staticMetaObject>, stringdata = 0x7ffff6b2f360 <qt_meta_stringdata_QEventLoop>, data = 0x7ffff6b2f300 <qt_meta_data_QEventLoop>, static_metacall = 0x7ffff69c7fa0 <QEventLoop::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}} returnCode = <optimized out> #25 0x000055555559c138 in main (argc=<optimized out>, argv=<optimized out>) at ./src/qgit.cpp:36 app = <incomplete type> set = {<QObject> = {_vptr.QObject = 0x7ffff6e21730 <vtable for QSettings+16>, static staticMetaObject = {d = {superdata = 0x0, stringdata = 0x7ffff6b34780 <qt_meta_stringdata_QObject>, data = 0x7ffff6b34660 <qt_meta_data_QObject>, static_metacall = 0x7ffff6a00710 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x555555925f70}, static staticQtMetaObject = {d = {superdata = 0x0, stringdata = 0x7ffff6b37500 <qt_meta_stringdata_Qt>, data = 0x7ffff6b348a0 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = 0x7ffff6e1bbc0 <QObject::staticMetaObject>, stringdata = 0x7ffff6b26540 <qt_meta_stringdata_QSettings>, data = 0x7ffff6b26400 <qt_meta_data_QSettings>, static_metacall = 0x7ffff6924260 <QSettings::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}} mainWin = 0x5555559055e0 ret = <optimized out> -- Regards, Boyuan Yang