gitk: Work around leftover temporary save file
authorPat Thoyts <patthoyts@users.sourceforge.net>
Tue, 15 Sep 2009 09:26:30 +0000 (10:26 +0100)
committerPaul Mackerras <paulus@samba.org>
Mon, 21 Sep 2009 03:04:48 +0000 (13:04 +1000)
If a file exists and is hidden on Windows the Tcl open command will
fail as the attributes provided in the CREAT call fail to match those
of the existing file. Forcing removal of the temporary file before we
begin solves any problems caused by previous failures to save the
application settings. An alternative would be to remove the hidden
attribute before calling 'open'.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
Signed-off-by: Paul Mackerras <paulus@samba.org>
gitk
diff --git a/gitk b/gitk
index 1306178069f280412432c7e3d3bf3406135de4e5..a0214b7004f141b7c918a5360d85f8f9e2db285c 100755 (executable)
--- a/gitk
+++ b/gitk
@@ -2526,6 +2526,7 @@ proc savestuff {w} {
     if {$stuffsaved} return
     if {![winfo viewable .]} return
     catch {
+       if {[file exists ~/.gitk-new]} {file delete -force ~/.gitk-new}
        set f [open "~/.gitk-new" w]
        if {$::tcl_platform(platform) eq {windows}} {
            file attributes "~/.gitk-new" -hidden true