gitk fails to show diffs when browsing a repository for which we have read-only access. This is due to gitk's assumption that the current directory is always writable. This teaches gitk to honor the GITK_TMPDIR environment variable. This allows users to override the default location used for writing temporary files. Signed-off-by: David Aguilar <davvid@xxxxxxxxx> --- gitk | 10 +++++++--- 1 files changed, 7 insertions(+), 3 deletions(-) diff --git a/gitk b/gitk index db5ec54..9139ace 100755 --- a/gitk +++ b/gitk @@ -3170,11 +3170,15 @@ proc flist_hl {only} { } proc gitknewtmpdir {} { - global diffnum gitktmpdir gitdir + global diffnum env gitktmpdir gitdir if {![info exists gitktmpdir]} { - set gitktmpdir [file join [file dirname $gitdir] \ - [format ".gitk-tmp.%s" [pid]]] + if {[info exists env(GITK_TMPDIR)]} { + set tmpdir $env(GITK_TMPDIR) + } else { + set tmpdir [file dirname $gitdir] + } + set gitktmpdir [file join $tmpdir [format ".gitk-tmp.%s" [pid]]] if {[catch {file mkdir $gitktmpdir} err]} { error_popup "[mc "Error creating temporary directory %s:" $gitktmpdir] $err" unset gitktmpdir -- 1.6.5.2.180.gc5b3e -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html