diff --git a/buildrepo.in b/buildrepo.in
index c211789714b4d6f7e0ee6bdff814f55a70778a87..961d245e8a19cfb7fd87848b46d198b6fdaeec97 100755
--- a/buildrepo.in
+++ b/buildrepo.in
@@ -39,12 +39,13 @@ all_exist() {
 build() {
 	local repo="$1" i needbuild
 
-	cd "$aportsdir/$repo" || return 1
+	cd "$aportsdir/$repo" || return 0
 
 	# first we try copy everything possible and find out which we need
 	# to rebuild. By doing this we might save us for rebuilding 
 	# needed when running 'abuild -R'
 	for i in */APKBUILD; do
+		[ -f "$i" ] || continue
 		export REPODEST="$repodir"
 		cd "$aportsdir/$repo"/${i%/*} || return 1
 		if abuild -k -q up2date 2>/dev/null; then