Skip to content

Commit

Permalink
Merge branch 'da/p4merge-mktemp'
Browse files Browse the repository at this point in the history
Create an empty file in $TMPDIR instead of using an empty file in
the local directory.

* da/p4merge-mktemp:
  mergetools/p4merge: Honor $TMPDIR for the /dev/null placeholder
  • Loading branch information
Junio C Hamano committed Jan 3, 2013
2 parents b81827b + 950b568 commit 894610a
Showing 1 changed file with 13 additions and 14 deletions.
27 changes: 13 additions & 14 deletions mergetools/p4merge
Original file line number Diff line number Diff line change
@@ -1,29 +1,21 @@
diff_cmd () {
empty_file=

# p4merge does not like /dev/null
rm_local=
rm_remote=
if test "/dev/null" = "$LOCAL"
then
LOCAL="./p4merge-dev-null.LOCAL.$$"
>"$LOCAL"
rm_local=true
LOCAL="$(create_empty_file)"
fi
if test "/dev/null" = "$REMOTE"
then
REMOTE="./p4merge-dev-null.REMOTE.$$"
>"$REMOTE"
rm_remote=true
REMOTE="$(create_empty_file)"
fi

"$merge_tool_path" "$LOCAL" "$REMOTE"

if test -n "$rm_local"
then
rm -f "$LOCAL"
fi
if test -n "$rm_remote"
if test -n "$empty_file"
then
rm -f "$REMOTE"
rm -f "$empty_file"
fi
}

Expand All @@ -33,3 +25,10 @@ merge_cmd () {
"$merge_tool_path" "$BASE" "$LOCAL" "$REMOTE" "$MERGED"
check_unchanged
}

create_empty_file () {
empty_file="${TMPDIR:-/tmp}/git-difftool-p4merge-empty-file.$$"
>"$empty_file"

printf "$empty_file"
}

0 comments on commit 894610a

Please sign in to comment.