diff_cmd () { empty_file= # p4merge does not like /dev/null if test "/dev/null" = "$LOCAL" then LOCAL="$(create_empty_file)" fi if test "/dev/null" = "$REMOTE" then REMOTE="$(create_empty_file)" fi "$merge_tool_path" "$LOCAL" "$REMOTE" if test -n "$empty_file" then rm -f "$empty_file" fi } merge_cmd () { touch "$BACKUP" if ! $base_present then cp -- "$LOCAL" "$BASE" create_virtual_base "$BASE" "$REMOTE" fi "$merge_tool_path" "$BASE" "$REMOTE" "$LOCAL" "$MERGED" check_unchanged } create_empty_file () { empty_file="${TMPDIR:-/tmp}/git-difftool-p4merge-empty-file.$$" >"$empty_file" printf "%s" "$empty_file" }