teknoraver / rpms / rpm

Forked from rpms/rpm 4 months ago
Clone

Blame rpm-4.12-beta-rpmdeps.patch

Panu Matilainen c14ac9
diff --git a/build/rpmfc.c b/build/rpmfc.c
Panu Matilainen c14ac9
index e798950..94089e5 100644
Panu Matilainen c14ac9
--- a/build/rpmfc.c
Panu Matilainen c14ac9
+++ b/build/rpmfc.c
Panu Matilainen c14ac9
@@ -760,6 +760,7 @@ rpmfc rpmfcCreate(const char *buildRoot, rpmFlags flags)
Panu Matilainen c14ac9
 	fc->buildRoot = xstrdup(buildRoot);
Panu Matilainen c14ac9
 	fc->brlen = strlen(buildRoot);
Panu Matilainen c14ac9
     }
Panu Matilainen c14ac9
+    fc->pkg = xcalloc(1, sizeof(*fc->pkg));
Panu Matilainen c14ac9
     fc->pool = rpmstrPoolCreate();
Panu Matilainen c14ac9
     return fc;
Panu Matilainen c14ac9
 }
Panu Matilainen c14ac9
@@ -1263,6 +1264,7 @@ rpmRC rpmfcGenerateDepends(const rpmSpec spec, Package pkg)
Panu Matilainen c14ac9
     av[ac] = NULL;
Panu Matilainen c14ac9
 
Panu Matilainen c14ac9
     fc = rpmfcCreate(spec->buildRoot, 0);
Panu Matilainen c14ac9
+    free(fc->pkg); /* XXX HACK */
Panu Matilainen c14ac9
     fc->pkg = pkg;
Panu Matilainen c14ac9
     fc->skipProv = !pkg->autoProv;
Panu Matilainen c14ac9
     fc->skipReq = !pkg->autoReq;
Panu Matilainen c14ac9
@@ -1337,6 +1339,8 @@ exit:
Panu Matilainen c14ac9
 
Panu Matilainen c14ac9
     /* Clean up. */
Panu Matilainen c14ac9
     free(fmode);
Panu Matilainen c14ac9
+    if (fc)
Panu Matilainen c14ac9
+	fc->pkg = NULL; /* XXX HACK */
Panu Matilainen c14ac9
     rpmfcFree(fc);
Panu Matilainen c14ac9
     argvFree(av);
Panu Matilainen c14ac9
     rpmfiFree(fi);