2008-07-29 Christian Franke <franke@computer.org>
* util/update-grub_lib.in (make_system_path_relative_to_its_root): Add conversion of emulated mount points on Cygwin.
This commit is contained in:
parent
b609876d15
commit
2921d33798
2 changed files with 21 additions and 1 deletions
|
@ -1,3 +1,8 @@
|
|||
2008-07-29 Christian Franke <franke@computer.org>
|
||||
|
||||
* util/update-grub_lib.in (make_system_path_relative_to_its_root):
|
||||
Add conversion of emulated mount points on Cygwin.
|
||||
|
||||
2008-07-29 Christian Franke <franke@computer.org>
|
||||
|
||||
* util/update-grub.in: Add a check for admin
|
||||
|
|
|
@ -68,7 +68,22 @@ make_system_path_relative_to_its_root ()
|
|||
dir=""
|
||||
fi
|
||||
|
||||
echo $path | sed -e "s,^$dir,,g"
|
||||
# XXX: This fails if $dir contains ','.
|
||||
path=`echo "$path" | sed -e "s,^$dir,,g"` || return 1
|
||||
|
||||
case "`uname 2>/dev/null`" in
|
||||
CYGWIN*)
|
||||
# Cygwin: Check if regular or emulated mount.
|
||||
if [ -z "$dir" ] || [ "`stat -c %D "$dir/.."`" != 620000 ] ; then
|
||||
# Reached some mount point not below /cygdrive.
|
||||
# GRUB does not know Cygwin's emulated mounts,
|
||||
# convert to Win32 path and remove drive letter.
|
||||
path=`cygpath -m "$path" | sed -n 's,^[A-Za-z]:,,p'`
|
||||
test ! -z "$path" || return 1
|
||||
fi ;;
|
||||
esac
|
||||
|
||||
echo "$path"
|
||||
}
|
||||
|
||||
is_path_readable_by_grub ()
|
||||
|
|
Loading…
Reference in a new issue