gitk: Put temporary directory inside .git
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 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> Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
parent
784b7e2f25
commit
929f577e0a
3
gitk
3
gitk
@ -3331,8 +3331,7 @@ proc gitknewtmpdir {} {
|
|||||||
global diffnum gitktmpdir gitdir
|
global diffnum gitktmpdir gitdir
|
||||||
|
|
||||||
if {![info exists gitktmpdir]} {
|
if {![info exists gitktmpdir]} {
|
||||||
set gitktmpdir [file join [file dirname $gitdir] \
|
set gitktmpdir [file join $gitdir [format ".gitk-tmp.%s" [pid]]]
|
||||||
[format ".gitk-tmp.%s" [pid]]]
|
|
||||||
if {[catch {file mkdir $gitktmpdir} err]} {
|
if {[catch {file mkdir $gitktmpdir} err]} {
|
||||||
error_popup "[mc "Error creating temporary directory %s:" $gitktmpdir] $err"
|
error_popup "[mc "Error creating temporary directory %s:" $gitktmpdir] $err"
|
||||||
unset gitktmpdir
|
unset gitktmpdir
|
||||||
|
Loading…
Reference in New Issue
Block a user