| Index: bin/cros_overlay_list | 
| diff --git a/bin/cros_overlay_list b/bin/cros_overlay_list | 
| index 7031068261db71568b91fabc5147c27476a6f2c0..238f0974ead85e1d63c333a41cd62b601a79a0fa 100755 | 
| --- a/bin/cros_overlay_list | 
| +++ b/bin/cros_overlay_list | 
| @@ -6,24 +6,26 @@ | 
|  | 
| # This script generates the list of board overlays and variants. | 
|  | 
| +# --- 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 scripts | 
| +# /usr/lib/crosutils.  Outside the chroot we find it relative to the script's | 
| # location. | 
| -common_paths="/usr/lib/crosutils $(dirname "$0")/.." | 
| - | 
| -for path in ${common_paths} ; do | 
| -  if [ -f "${path}/common.sh" ] ; then | 
| -    COMMON_SH="${path}/common.sh" | 
| -    break | 
| -  fi | 
| -done | 
| - | 
| -if [ -z "${COMMON_SH}" ] ; then | 
| -  error "common.sh not found in search path (${common_paths})" | 
| -  exit 1 | 
| -fi | 
| +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 | 
| +} | 
|  | 
| -. "${COMMON_SH}" | 
| +find_common_sh | 
| +. "${SCRIPT_ROOT}/common.sh" || (echo "Unable to load common.sh" && exit 1) | 
| +# --- END COMMON.SH BOILERPLATE --- | 
|  | 
| get_default_board | 
|  | 
|  |