diff --git a/cros_workon b/cros_workon index 128933a84a..e9400da47d 100755 --- a/cros_workon +++ b/cros_workon @@ -148,6 +148,25 @@ regen_manifest_and_sync() { find_repo_dir local_manifest="${REPODIR}/local_manifest.xml" + # ensure we don't clobber existing manifest entries + if [ -f "${local_manifest}" ]; then + grep -q -i " tags at all." + fi + sed -ne '/^[[:space:]]\+[^[:space:]]/q1' "${local_manifest}" + if [ $? -ne 0 ]; then + die "Your local manifest will be clobbered running cros_workon. You can not have any tags that span multiple lines or are indented." + fi + egrep -q "^[^<]" "${local_manifest}" + if [ $? -ne 1 ]; then + die "Your local manifest will be clobbered running cros_workon. You can not have any tags that span multiple lines" + fi + grep -v "