[PATCH 5/8] gitk: put temporary directory inside .git
- From
Martin von Zweigbergk <martin.von.zweigbergk@gmail.com>
- Date
- Apr 5, 2011, 02:14 UTC
- Message-ID
- <1301969659-19703-6-git-send-email-martin.von.zweigbergk@gmail.com>
- In-Reply-To
- <1301969659-19703-1-git-send-email-martin.von.zweigbergk@gmail.com>
When running "External diff" from gitk, the "from" and "to" files will first be copied into a directory that is currently ".git/../.gitk-tmp.$pid". When gitk is closed, the directory is deleted. When the work tree is not at ".git/.." (which is supported since the previous commit), that directory may not even be git-related and it does not seem unlikely that permissions may not allow the temporary directory to be created there. Move the directory inside .git instead.
This patch introduces a regression in the case that the .git directory is readonly, but .git/.. is writeable.
Signed-off-by: Martin von Zweigbergk <martin.von.zweigbergk@gmail.com> --- gitk-git/gitk | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-)
diff --git a/gitk-git/gitk b/gitk-git/gitk index 58b98df..b925f3e 100755 --- a/gitk-git/gitk +++ b/gitk-git/gitk @@ -3332,8 +3332,7 @@ proc gitknewtmpdir {} { global diffnum gitktmpdir gitdir if {![info exists gitktmpdir]} { - set gitktmpdir [file join [file dirname $gitdir] \ - [format ".gitk-tmp.%s" [pid]]] + set gitktmpdir [file join $gitdir [format ".gitk-tmp.%s" [pid]]] if {[catch {file mkdir $gitktmpdir} err]} { error_popup "[mc "Error creating temporary directory %s:" $gitktmpdir] $err" unset gitktmpdir
-- 1.7.4.79.gcbe20