45

Since this morning when I try to use gitk on a project with a git instance it gives me the below error. This never happened to me since today and I have used gitk for months now.

The only difference I can point out is that this morning, during an attempt of installation of iStat to monitor my mac mini temperatures, I ran the command sudo gem update --system and I tried also to install rubygems-update. I don't know if there is any correlation.

The specific error is this:

objc[1253]: autorelease pool page 0x7fe20e945000 corrupted
  magic     0x00000000 0x00000000 0x00000000 0x00000000
  should be 0xa1a1a1a1 0x4f545541 0x454c4552 0x21455341
  pthread   0x10f3ecdc0
  should be 0x10f3ecdc0

[1]    1253 abort      gitk

Since I've downloaded it and git through home brew, I've tried to use brew doctor, brew cleanup [-d] [-v], brew unlink and relink, and updated both git and gitk.

I'm using the following command line tool: 12.0.32.28

pkamb
  • 33,281
  • 23
  • 160
  • 191
deruloop
  • 1,199
  • 7
  • 7

4 Answers4

74

I solved the issue by resetting gitk configurations with:

rm ~/.config/git/gitk
pkamb
  • 33,281
  • 23
  • 160
  • 191
deruloop
  • 1,199
  • 7
  • 7
43

Thanks to this post, I managed to get gitk working again - I was really missing it! The workaround only works once though, and then it is back. I've started a discussion to try and get it fixed properly here:

https://github.com/Homebrew/discussions/discussions/705

The problem is due to this line in the ~/.config/git/gitk file:

set geometry(state) zoomed

If you change it to:

set geometry(state) normal

Then gitk will work again, but then it changes it back to zoomed, even if you don't change anything, so it starts crashing again. My colleague came up with this workaround for that:

alias gitk="sed -i .bak 's/zoomed/normal/g' ~/.config/git/gitk && /usr/local/bin/gitk"

Setup this alias in Bash and it will replace the broken "zoomed" with "normal" each time you run gitk, until such time as the real problem is fixed.

I hope this extra information helps. I was sure as hell missing this tool!

wisbucky
  • 33,218
  • 10
  • 150
  • 101
Colin Ward
  • 571
  • 3
  • 5
  • 1
    Seems gitk sets "geometry(state)" to "zoomed" if a user expands its window to entire screen by double clicking the gitk caption. When I manually set the window boundaries slightly less then the screen itself then "geometry(state)" value naturally remains "normal". – satorg May 14 '21 at 05:39
  • @Lufth if this answer solved your problem, you should accept it – Ivan G. May 24 '21 at 16:23
0

It feels like a bug in Gitk to me. If the window is the size of the whole screen, then geometry(state) is set to zoomed each time Gitk is opened. As above, set to normal manually (using open ~/.config/git/gitk) then resize the window to prevent this happening.

0

This was likely due to a bug in Tcl/Tk; it (or a very similar bug) is expected to be fixed in Tk 8.6.13. However I have not managed to test this myself with gitk.

chrstphrchvz
  • 657
  • 5
  • 18