git-am: fix detection of absolute paths for windows

Add an is_absolute_path function to abstract out platform differences
in checking for an absolute or relative path.
Specifically fixes t4150-am on Windows.

[PT: updated following suggestion from j6t to support \* and //*]

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
This commit is contained in:
Pat Thoyts 2010-09-30 14:24:07 +01:00
Родитель 36e035f5dc
Коммит 5e9677cbdf
2 изменённых файлов: 21 добавлений и 6 удалений

Просмотреть файл

@ -444,12 +444,12 @@ else
set x
first=
}
case "$arg" in
/*)
set "$@" "$arg" ;;
*)
set "$@" "$prefix$arg" ;;
esac
if is_absolute_path "$arg"
then
set "$@" "$arg"
else
set "$@" "$prefix$arg"
fi
done
shift
fi

Просмотреть файл

@ -209,5 +209,20 @@ case $(uname -s) in
find () {
/usr/bin/find "$@"
}
is_absolute_path () {
case "$1" in
[/\\]* | [A-Za-z]:*)
return 0 ;;
esac
return 1
}
;;
*)
is_absolute_path () {
case "$1" in
/*)
return 0 ;;
esac
return 1
}
esac