diff options
author | Alexander Gavrilov <angavrilov@gmail.com> | 2008-10-03 11:36:54 +0400 |
---|---|---|
committer | Shawn O. Pearce <spearce@spearce.org> | 2008-10-10 09:33:21 -0700 |
commit | 5c91cb5d0dd06aa5574234a3d651098393adb4fa (patch) | |
tree | a3df6f7a3ce5321de4fe817ffd1d7db4f09ef014 /lib | |
parent | git-gui: Add a search command to the blame viewer. (diff) | |
download | tgif-5c91cb5d0dd06aa5574234a3d651098393adb4fa.tar.xz |
git-gui: Fix the blame viewer destroy handler.
It did not delete the object, which is not very good.
Also, destroy may be fired up for subwindows, so we
should check %W.
Signed-off-by: Alexander Gavrilov <angavrilov@gmail.com>
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/blame.tcl | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/blame.tcl b/lib/blame.tcl index a45784c057..765d08c004 100644 --- a/lib/blame.tcl +++ b/lib/blame.tcl @@ -377,11 +377,18 @@ constructor new {i_commit i_path i_jump} { "if {{$w.file_pane} eq {%W}} {[cb _resize %h]}" wm protocol $top WM_DELETE_WINDOW "destroy $top" - bind $top <Destroy> [cb _kill] + bind $top <Destroy> [cb _handle_destroy %W] _load $this $i_jump } +method _handle_destroy {win} { + if {$win eq $w} { + _kill $this + delete_this + } +} + method _kill {} { if {$current_fd ne {}} { kill_file_process $current_fd |