
PATH=.:/usr/bin:/usr/ucb
DIFF3=$HOME/d22/lib/rcs/rdiff3
p=0
case $1 in
-p)
	p=$1
	shift;;
esac


if test $# -ge 3
then
	if test -f $1 -a -f $2 -a -f $3
	then
		trap "rm -f /tmp/d3[abc]$$" 0 1 2 13 15
		diff $1 $3 >/tmp/d3a$$
		diff $2 $3 >/tmp/d3b$$
		$DIFF3 -E /tmp/d3[ab]$$ $1 $2 $3 $4 $5 > /tmp/d3c$$
		r=$?
		if test $r != 0
		then
			case ${MSG=e} in
			r) echo : $r   . 1>&2 ;;
			*) echo Warning: $r overlaps during merge. 1>&2 ;;
			esac
		fi
		if test $p != 0
		then
			(cat /tmp/d3c$$; echo '1,$p') | ed - $1
		else
			(cat /tmp/d3c$$; echo w) | ed - $1
		fi
		exit 0
	else
		case ${MSG=e} in
		r) echo "   $1, $2  $3" 1>&2 ;;
		*) echo "Cannot open $1, $2, or $3" 1>&2 ;;
		esac
	fi
fi
case ${MSG=e} in
r) echo ": merge [-p] 1 2 3" 1>&2 ;;
*) echo "Usage: merge [-p] file1 file2 file3" 1>&2 ;;
esac
exit 1
