#!/bin/bash
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

if [[ $# -lt 1 ]] ; then
	echo "!!! ${0##*/}: at least one argument needed" >&2
	exit 1
fi

ret=0
file_found=0
mysed="s:${D}::g"

for x in "$@" ; do
	y=$D${x#/}
	if [ -e "${y}" ] ; then
		if [ -f "${y}" ] ; then
			file_found=1
			sed -i -e "${mysed}" "${y}"
		else
			echo "${y} is not a regular file!" >&2
			false
		fi
		((ret|=$?))
	else
		mysed="${x}"
	fi
done

if [ $file_found = 0 ] ; then
	echo "!!! ${0##*/}: $y does not exist" 1>&2
	((ret|=1))
fi

exit $ret
