aboutsummaryrefslogtreecommitdiff
path: root/trunk/src/templatepkg
diff options
context:
space:
mode:
Diffstat (limited to 'trunk/src/templatepkg')
-rwxr-xr-xtrunk/src/templatepkg16
1 files changed, 12 insertions, 4 deletions
diff --git a/trunk/src/templatepkg b/trunk/src/templatepkg
index 4f2592f..a8045ee 100755
--- a/trunk/src/templatepkg
+++ b/trunk/src/templatepkg
@@ -479,10 +479,18 @@ function template_add {
if use_svn && [ -d "$TEMPLATE_BASE.d/.svn" ]; then
- if [ ! -d "$TEMPLATE_BASE.d/`dirname $file`/.svn" ]; then
- mkdir -p $TEMPLATE_BASE.d/`dirname $file`/
- svn add $TEMPLATE_BASE.d/`dirname $file`/
- fi
+ candidate="./`dirname $file`"
+ mkdir -p $TEMPLATE_BASE.d/$candidate
+ cd $TEMPLATE_BASE.d/$candidate
+ while true; do
+ if [ -d ".svn" ]; then
+ svn add `basename $candidate`
+ break
+ else
+ candidate="`basename $(pwd)`"
+ cd ..
+ fi
+ done
cp -a $jail/$file $destination