diff --git a/build_image b/build_image index 2dc7c7887b..d56edac157 100755 --- a/build_image +++ b/build_image @@ -9,17 +9,17 @@ # the given target's root with binary packages turned on. This script will # build the Chrome OS image using only pre-built binary packages. -# --- BEGIN COMMON.SH BOILERPLATE --- # Load common CrOS utilities. Inside the chroot this file is installed in # /usr/lib/crosutils. Outside the chroot we find it relative to the script's # location. find_common_sh() { - local common_paths=(/usr/lib/crosutils $(dirname "$(readlink -f "$0")")) + local common_paths=(/usr/lib/crosutils $(dirname "$0")) local path SCRIPT_ROOT= for path in "${common_paths[@]}"; do - if [ -r "${path}/common.sh" ]; then + local common="${path}/common.sh" + if ([ -r "${common}" ] && . "${common}" && [ -d "${SCRIPTS_DIR}" ]); then SCRIPT_ROOT=${path} break fi @@ -27,8 +27,7 @@ find_common_sh() { } find_common_sh -. "${SCRIPT_ROOT}/common.sh" || (echo "Unable to load common.sh" && exit 1) -# --- END COMMON.SH BOILERPLATE --- +. "${SCRIPT_ROOT}/common.sh" || ! echo "Unable to load common.sh" || exit 1 # Load functions and constants for chromeos-install [ -f /usr/lib/installer/chromeos-common.sh ] && \