Index: clean_loopback_devices |
diff --git a/clean_loopback_devices b/clean_loopback_devices |
index 4fbb5549aa27c6307ec4b5f98a2efd196be9170c..acfe18919f46dfdbc535d9e117802bae084eeabc 100755 |
--- a/clean_loopback_devices |
+++ b/clean_loopback_devices |
@@ -1,3 +1,4 @@ |
+#!/bin/sh |
# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. |
# Use of this source code is governed by a BSD-style license that can be |
# found in the LICENSE file. |
@@ -7,9 +8,26 @@ |
# failures. This script only affects mountpoints and loopback devices |
# that were created within this chroot. |
-# Load common constants. This should be the first executable line. |
-# The path to common.sh should be relative to your script's location. |
-. "$(dirname "$0")/common.sh" |
+# --- 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 path |
+ |
+ SCRIPT_ROOT= |
+ for path in "${common_paths[@]}"; do |
+ if [ -r "${path}/common.sh" ]; then |
+ SCRIPT_ROOT=${path} |
+ break |
+ fi |
+ done |
+} |
+ |
+find_common_sh |
+. "${SCRIPT_ROOT}/common.sh" || (echo "Unable to load common.sh" && exit 1) |
+# --- END COMMON.SH BOILERPLATE --- |
# Script must be run inside the chroot. |
assert_inside_chroot |
@@ -24,8 +42,7 @@ OUTPUT_DIR="${FLAGS_output_root}/${FLAGS_board}" |
echo "This will unmount any directory under $OUTPUT_DIR:" |
read -p "Are you sure (y/N)? " SURE |
SURE="${SURE:0:1}" # Get just the first character |
-if [ "${SURE}" != "y" ] |
-then |
+if [ "${SURE}" != "y" ]; then |
echo "Ok, better safe than sorry." |
exit 1 |
fi |