diff --git a/src/lib66/ss_resolve.c b/src/lib66/ss_resolve.c
index 4653d180f2a2ad423138b7aaa643520f78dd0236..74d8cb4cda7358c0987415315ee00787de3e6e04 100644
--- a/src/lib66/ss_resolve.c
+++ b/src/lib66/ss_resolve.c
@@ -997,13 +997,15 @@ int ss_resolve_add_rdeps(genalloc *tokeep, ss_resolve_t *res, char const *src)
 	}
 	if ((res->type == TYPE_BUNDLE || res->type == TYPE_MODULE) && res->ndeps)
 	{
-		if (!sastr_clean_string(&tmp,res->sa.s + res->deps)) goto err ;
+		uint32_t deps = res->type == TYPE_MODULE ? res->contents : res->deps ;
+		if (!sastr_clean_string(&tmp,res->sa.s + deps)) goto err ;
 		ss_resolve_t dres = RESOLVE_ZERO ;
 		for (; a < tmp.len ; a += strlen(tmp.s + a) + 1)
 		{	
 			char *name = tmp.s + a ;
 			if (!ss_resolve_check(src,name)) goto err ; 
 			if (!ss_resolve_read(&dres,src,name)) goto err ;
+			if (dres.type == TYPE_CLASSIC) continue ;
 			if (!ss_resolve_cmp(tokeep,name))
 			{
 				if (!ss_resolve_append(tokeep,&dres)) goto err ;