gitk: Don't reread git-rev-list output from scratch on view switch
authorPaul Mackerras <paulus@samba.org>
Sun, 16 Apr 2006 23:56:02 +0000 (09:56 +1000)
committerPaul Mackerras <paulus@samba.org>
Sun, 16 Apr 2006 23:56:02 +0000 (09:56 +1000)
commit22626ef4fd5a0b2cf1fc8e90bbb23f8ff0ed43ea
tree8b2c7fbb8e06a0e51a17161e7dabe7b3fec3d2c9
parentfdedbcfb0d71d99f96e08c1903ce8bd5a8f51a39
gitk: Don't reread git-rev-list output from scratch on view switch

Previously, if we switched away from a view before we had finished
reading the git-rev-list output for it and laying out the graph, we
would discard the partially-laid-out graph and reread it from
scratch if we switched back to the view.  With this, we preserve the
state of the partially-laid-out graph in viewdata($view) and restore
it if we switch back.  The pipe to git-rev-list remains open but we
just don't read from it any more until we switch back to that view.

This also makes linesegends a list rather than an array, which turns
out to be slightly faster, as well as being easier to save and restore.

The `update' menu item now kills the git-rev-list process if there is
one still running when we do the update.

Signed-off-by: Paul Mackerras <paulus@samba.org>
gitk