Sophie

Sophie

distrib > Mandriva > 2010.1 > x86_64 > media > main-updates-src > by-pkgid > dec4e1edeef36e7485e13bf42f1af5da > files > 20

rpm-4.6.0-14.3mnb2.src.rpm

diff -p -up rpm-4.6.0/build/spec.c.1010 rpm-4.6.0/build/spec.c
--- rpm-4.6.0/build/spec.c.1010	2009-08-21 15:52:54.000000000 +0200
+++ rpm-4.6.0/build/spec.c	2009-08-21 15:55:23.000000000 +0200
@@ -346,27 +346,29 @@ int addSource(rpmSpec spec, Package pkg,
 	addMacro(spec->macros, buf, NULL, p->fullSource, RMIL_SPEC);
 	free(buf);
 #ifdef WITH_LUA
-	{
-	rpmlua lua = NULL; /* global state */
-	const char * what = (flag & RPMBUILD_ISPATCH) ? "patches" : "sources";
-	rpmluaPushTable(lua, what);
-	rpmluav var = rpmluavNew();
-	rpmluavSetListMode(var, 1);
-	rpmluavSetValue(var, RPMLUAV_STRING, body);
-	rpmluaSetVar(lua, var);
-	var = rpmluavFree(var);
-	rpmluaPop(lua);
-	}
-	{
-	rpmlua lua = NULL; /* global state */
-	const char * what = (flag & RPMBUILD_ISPATCH) ? "patches_num" : "sources_num";
-	rpmluaPushTable(lua, what);
-	rpmluav var = rpmluavNew();
-	rpmluavSetKey(var, RPMLUAV_STRING, body);
-	rpmluavSetValueNum(var, num);
-	rpmluaSetVar(lua, var);
-	var = rpmluavFree(var);
-	rpmluaPop(lua);
+	if(!spec->recursing) {
+		{
+		rpmlua lua = NULL; /* global state */
+		const char * what = (flag & RPMBUILD_ISPATCH) ? "patches" : "sources";
+		rpmluaPushTable(lua, what);
+		rpmluav var = rpmluavNew();
+		rpmluavSetListMode(var, 1);
+		rpmluavSetValue(var, RPMLUAV_STRING, body);
+		rpmluaSetVar(lua, var);
+		var = rpmluavFree(var);
+		rpmluaPop(lua);
+		}
+		{
+		rpmlua lua = NULL; /* global state */
+		const char * what = (flag & RPMBUILD_ISPATCH) ? "patches_num" : "sources_num";
+		rpmluaPushTable(lua, what);
+		rpmluav var = rpmluavNew();
+		rpmluavSetKey(var, RPMLUAV_STRING, body);
+		rpmluavSetValueNum(var, num);
+		rpmluaSetVar(lua, var);
+		var = rpmluavFree(var);
+		rpmluaPop(lua);
+		}
 	}
 #endif
 	body = _free(body);