Thread (6 messages) flat view 6 messages, 2 authors, 2021-08-04

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

From: Chris Torek <hidden>
Date: 2021-08-04 06:27:34

On Tue, Aug 3, 2021 at 6:51 PM Carlo Marcelo Arenas Belón
[off-list ref] wrote:
quoted hunk ↗ jump to hunk
From: Tobias Pietzsch <redacted>

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 <redacted>
Signed-off-by: Carlo Marcelo Arenas Belón <redacted>
---
 gitk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gitk b/gitk
index b62c12f..cc587b5 100755
--- a/gitk
+++ b/gitk
@@ -12664,7 +12664,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
I have no objection to this patch (and the other two look fine to me)
but I would like to say that this whole idea looks racy in general,
and that it would be better to fix this inside Tk itself: the internal
visibility-wait should be doing the visibility-check already. Given
that it's obviously *not*, this, as a workaround, seems OK.

Chris
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help