git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] gitk: check main window visibility before waiting for it to show

From
TGTobias Pietzsch via GitGitGadget <gitgitgadget@gmail.com>
Date
Jan 9, 2021, 23:26 UTC
Message-ID
<pull.944.git.git.1610234771966.gitgitgadget@gmail.com>
From: Tobias Pietzsch <pietzsch@mycroft.speedport.ip>

If the main window is already visible when gitk waits for it to become visible, gitk hangs forever. This commit adds a check whether the window is already visible. See https://wiki.tcl-lang.org/page/tkwait+visibility

Signed-off-by: Tobias Pietzsch <pietzsch@mycroft.speedport.ip>
---
    gitk: check main window visibility before waiting for it to show
    
    If the main window is already visible when gitk waits for it to become
    visible, gitk hangs forever.
    
    This commit adds a check whether the window is already visible. See
    https://wiki.tcl-lang.org/page/tkwait+visibility
    
    The symptom of the for-ever waiting is that gitk shows just an empty
    window, like this: https://tinyurl.com/yxr5qlf6 It happens (to me) on
    macOS 11.1 with git-gui installed via homebrew. It doesn't happen on
    macOS 10.14.
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-944%2Ftpietzsch%2Fmaster-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-944/tpietzsch/master-v1
Pull-Request: https://github.com/git/git/pull/944
 gitk-git/gitk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gitk-git/gitk b/gitk-git/gitk
index 23d9dd1fe0d..cd02b4d50fc 100755
--- a/gitk-git/gitk
+++ b/gitk-git/gitk
@@ -12658,7 +12658,7 @@ catch {
     wm iconphoto . -default gitlogo gitlogo32
 }
 # wait for the window to become visible
-tkwait visibility .
+if {![winfo viewable .]} {tkwait visibility .}
 set_window_title
 update
 readrefs

base-commit: 72c4083ddf91b489b7b7b812df67ee8842177d98
-- 
gitgitgadget
Next: Beat Bolli
Message 1 of 8 in “gitk: check main window visibility before waiting for it to show”
  1. gitk: check main window visibility before waiting for it to showTobias Pietzsch via GitGitGadget, Jan 9, 2021
  2. Beat BolliJan 10, 2021
  3. Johannes SchindelinNov 13, 2024
  4. Paul MackerrasNov 14, 2024
  5. Junio C HamanoNov 14, 2024
  6. Gitk maintainership, was Re: The health of gitkJohannes Sixt, Nov 17, 2024
  7. Paul MackerrasNov 19, 2024
  8. Johannes SixtNov 19, 2024

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.