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

[PATCH-resent] gitk: fix in procedure drawcommits

From
Michele Ballabio <barra_cuda@katamail.com>
Date
Oct 19, 2007, 13:44 UTC
Message-ID
<200710191544.22228.barra_cuda@katamail.com>
In-Reply-To
<20071019052823.GI14735@spearce.org>
This patch indroduces a check before unsetting an array element.
Without this, gitk may complain with
	can't unset "prevlines(...)": no such element in array
when scrolling happens.
Signed-off-by: Michele Ballabio <barra_cuda@katamail.com>
---

There's an error that seems to occur in gitk only on mutt's imported repo, but I don't know why. This is hopefully the right fix.

An example of this error:
can't unset "prevlines(a3b4383d69e0754346578c85ba8ff7c05bd88705)": no such element in array
can't unset "prevlines(a3b4383d69e0754346578c85ba8ff7c05bd88705)": no such element in array
    while executing
"unset prevlines($lid)"
    (procedure "drawcommits" line 39)
    invoked from within
"drawcommits $row $endrow"
    (procedure "drawfrac" line 10)
    invoked from within
"drawfrac $f0 $f1"
    (procedure "scrollcanv" line 3)
    invoked from within
"scrollcanv .tf.histframe.csb 0.00672513 0.0087015"
 gitk |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/gitk b/gitk
index 300fdce..527b716 100755
--- a/gitk
+++ b/gitk
@@ -3697,7 +3697,9 @@ proc drawcommits {row {endrow {}}} {
 
 	if {[info exists lineends($r)]} {
 	    foreach lid $lineends($r) {
-		unset prevlines($lid)
+		if {[info exists prevlines($lid)]} {
+		    unset prevlines($lid)
+		}
 	    }
 	}
 	set rowids [lindex $rowidlist $r]
-- 
1.5.3
Previous: Jan HudecNext: Paul Mackerras
Message 12 of 25 in “gitk patch collection pull request”
  1. Shawn O. PearceOct 19, 2007
  2. gitk: Do not pick up file names of "copy from" linesJohannes Sixt, Oct 19, 2007
  3. Shawn O. PearceOct 19, 2007
  4. Johannes SixtOct 19, 2007
  5. Shawn O. PearceOct 19, 2007
  6. Paul MackerrasOct 19, 2007
  7. Shawn O. PearceOct 20, 2007
  8. Jonathan del StrotherOct 20, 2007
  9. Paul MackerrasOct 20, 2007
  10. Jonathan del StrotherOct 20, 2007
  11. Jan HudecOct 20, 2007
  12. gitk: fix in procedure drawcommitsMichele Ballabio, Oct 19, 2007
  13. Paul MackerrasOct 20, 2007
  14. Michele BallabioOct 20, 2007
  15. Jan HudecOct 20, 2007
  16. Paul MackerrasOct 21, 2007
  17. Rocco RutteOct 21, 2007
  18. Linus TorvaldsOct 19, 2007
  19. Paul MackerrasOct 20, 2007
  20. Linus TorvaldsOct 20, 2007
  21. Paul MackerrasOct 23, 2007
  22. Linus TorvaldsOct 23, 2007
  23. Paul MackerrasOct 23, 2007
  24. Linus TorvaldsOct 23, 2007
  25. Paul MackerrasOct 24, 2007

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.