summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--eclass/git-r3.eclass10
1 files changed, 9 insertions, 1 deletions
diff --git a/eclass/git-r3.eclass b/eclass/git-r3.eclass
index f30600b930a..99e2ed9edd6 100644
--- a/eclass/git-r3.eclass
+++ b/eclass/git-r3.eclass
@@ -343,7 +343,7 @@ _git-r3_set_gitdir() {
GIT_DIR=${EGIT3_STORE_DIR}/${repo_name}
- if [[ ! -d ${EGIT3_STORE_DIR} ]]; then
+ if [[ ! -d ${EGIT3_STORE_DIR} && ! ${EVCS_OFFLINE} ]]; then
(
addwrite /
mkdir -p "${EGIT3_STORE_DIR}"
@@ -352,6 +352,14 @@ _git-r3_set_gitdir() {
addwrite "${EGIT3_STORE_DIR}"
if [[ ! -d ${GIT_DIR} ]]; then
+ if [[ ${EVCS_OFFLINE} ]]; then
+ eerror "A clone of the following repository is required to proceed:"
+ eerror " ${1}"
+ eerror "However, networking activity has been disabled using EVCS_OFFLINE and there"
+ eerror "is no local clone available."
+ die "No local clone of ${1}. Unable to proceed with EVCS_OFFLINE."
+ fi
+
local saved_umask
if [[ ${EVCS_UMASK} ]]; then
saved_umask=$(umask)