@ -37,7 +37,7 @@ CMDLINE=$(cat /proc/cmdline)
# Scan CMDLINE for any specified real_root= or cdroot arguments
# Scan CMDLINE for any specified real_root= or cdroot arguments
FAKE_ROOT=''
FAKE_ROOT=''
FAKE_INIT=''
FAKE_INIT=''
REAL _ROOTFLAGS=''
FAKE _ROOTFLAGS=''
INIT_OPTS=''
INIT_OPTS=''
ROOTFSTYPE='auto'
ROOTFSTYPE='auto'
CRYPT_SILENT=0
CRYPT_SILENT=0
@ -236,6 +236,9 @@ do
real_rootflags=*)
real_rootflags=*)
REAL_ROOTFLAGS=${x#*=}
REAL_ROOTFLAGS=${x#*=}
;;
;;
rootflags=*)
FAKE_ROOTFLAGS=${x#*=}
;;
rootfstype=*)
rootfstype=*)
ROOTFSTYPE=${x#*=}
ROOTFSTYPE=${x#*=}
;;
;;
@ -267,13 +270,20 @@ do
esac
esac
done
done
if [ -z "${REAL_ROOT}" -a \( "${CDROOT}" = '0' \) -a \( "${FAKE_ROOT}" != "/dev/ram0" \) ]
if [ \( "${CDROOT}" = '0' \) ]
then
then
if [ -z "${REAL_ROOT}" -a \( "${FAKE_ROOT}" != "/dev/ram0" \) ]
then
REAL_ROOT="${FAKE_ROOT}"
REAL_ROOT="${FAKE_ROOT}"
fi
fi
if [ -z "${REAL_INIT}" -a \( "${CDROOT}" = '0' \) -a \( "${FAKE_INIT}" != "/linuxrc" \) ]
if [ -z "${REAL_INIT}" -a \( "${FAKE_INIT}" != "/linuxrc" \) ]
then
then
REAL_INIT="${FAKE_INIT}"
REAL_INIT="${FAKE_INIT}"
fi
if [ -z "${REAL_ROOTFLAGS}" ]
then
REAL_ROOTFLAGS="${FAKE_ROOTFLAGS}"
fi
fi
fi
# Set variables based on the value of REAL_ROOT
# Set variables based on the value of REAL_ROOT