gitk hangs if Shift+F5 is pressed rapidly a couple of times
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
git (Ubuntu) |
New
|
Undecided
|
Unassigned |
Bug Description
Steps to reproduce:
Start `gitk` in any sizeable repository such as Linux kernel. Press Shift+F5 a couple of times.
Expected results:
gitk should re-render the whole version history a couple of times.
Actual results:
gitk shows an error dialog which says:
Application Error
can't read "treediffs(
can't read "treediffs(
while executing
"lsearch -exact $treediffs($ids) $fname"
(procedure "makediffhdr" line 7)
invoked from within
"makediffhdr $fname $ids"
(procedure "parseblobdiffline" line 54)
invoked from within
"parseblobdiffline $ids $line"
(procedure "getblobdiffline" line 16)
invoked from within
"getblobdiffline file9 74c955491788843
("eval" body line 1)
invoked from within
"eval $script"
(procedure "dorunq" line 11)
invoked from within
"dorunq"
("after" script)
Actual commit ids depend on the repository, of course.
The dialog has button OK and Skip Messages and pressing either one results in UI hanging. (The UI is still redrawn if window is resized but the DAG area has infinite wait cursor state and all the history is replaced with one line saying "Reading commits..." and gitk doesn't actually execute anything or read any data.
This is probably a race condition in the code where the "Reload" action is not re-entrant but it's execute twice in this case.
ProblemType: Bug
DistroRelease: Ubuntu 20.04
Package: gitk 1:2.25.
ProcVersionSign
Uname: Linux 5.15.0-
NonfreeKernelMo
ApportVersion: 2.20.11-
Architecture: amd64
CasperMD5CheckR
CurrentDesktop: MATE
Date: Mon May 22 12:25:12 2023
EcryptfsInUse: Yes
InstallationDate: Installed on 2019-01-05 (1597 days ago)
InstallationMedia: Ubuntu 18.04.1 LTS "Bionic Beaver" - Release amd64 (20180725)
PackageArchitec
SourcePackage: git
UpgradeStatus: Upgraded to focal on 2022-09-13 (250 days ago)
modified.
mtime.conffile.