diff options
author | Markus Hitter <mah@jump-ing.de> | 2016-11-07 19:02:51 +0100 |
---|---|---|
committer | Paul Mackerras <paulus@ozlabs.org> | 2016-12-12 20:39:37 +1100 |
commit | 18ae912082736b4c2c596b2c5bdcf2e032a03467 (patch) | |
tree | b2b1023768339d6b7dcb03645f0e16d160bf3c76 | |
parent | 0748f41eb83194dbc310fe47b4948f611ac5b3a2 (diff) | |
download | git-18ae912082736b4c2c596b2c5bdcf2e032a03467.tar.gz |
gitk: Clear array 'commitinfo' on reload
After a reload we might have an entirely different set of commits,
so keeping all of them leaks memory. Remove them all because
re-creating them is not more expensive than testing wether they're
still valid. Lazy (re-)creation is already well established, so
a missing entry can't cause harm.
Signed-off-by: Markus Hitter <mah@jump-ing.de>
Signed-off-by: Paul Mackerras <paulus@ozlabs.org>
-rwxr-xr-x | gitk | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -588,7 +588,7 @@ proc updatecommits {} { proc reloadcommits {} { global curview viewcomplete selectedline currentid thickerline global showneartags treediffs commitinterest cached_commitrow - global targetid + global targetid commitinfo set selid {} if {$selectedline ne {}} { @@ -609,6 +609,7 @@ proc reloadcommits {} { getallcommits } clear_display + unset -nocomplain commitinfo unset -nocomplain commitinterest unset -nocomplain cached_commitrow unset -nocomplain targetid |