62b4055
commit 4018bbd08e84fd0cc227dcb8d2dc20693ce2296a
62b4055
Author: Panu Matilainen <pmatilai@redhat.com>
62b4055
Date:   Tue Sep 15 10:56:58 2009 +0300
62b4055
62b4055
    Allow absolute paths in file lists again (SuseBug:535594, RhBug:521760)
62b4055
    - patch from OpenSUSE / Michael Schroeder
62b4055
    - build-time generated file lists should be placed in the build directory,
62b4055
      but at least one valid use case for this is things like %files -f %{SOURCE10}
62b4055
62b4055
diff --git a/build/files.c b/build/files.c
62b4055
index b5c5437..061494d 100644
62b4055
--- a/build/files.c
62b4055
+++ b/build/files.c
62b4055
@@ -1755,9 +1755,13 @@ static rpmRC processPackageFiles(rpmSpec spec, Package pkg,
62b4055
 
62b4055
 	argvSplit(&filelists, getStringBuf(pkg->fileFile), "\n");
62b4055
 	for (fp = filelists; *fp != NULL; fp++) {
62b4055
-	    ffn = rpmGetPath("%{_builddir}/",
62b4055
-		(spec->buildSubdir ? spec->buildSubdir : "") ,
62b4055
-		"/", *fp, NULL);
62b4055
+	    if (**fp == '/') {
62b4055
+		ffn = rpmGetPath(*fp, NULL);
62b4055
+	    } else {
62b4055
+		ffn = rpmGetPath("%{_builddir}/",
62b4055
+		    (spec->buildSubdir ? spec->buildSubdir : "") ,
62b4055
+		    "/", *fp, NULL);
62b4055
+	    }
62b4055
 	    fd = fopen(ffn, "r");
62b4055
 
62b4055
 	    if (fd == NULL || ferror(fd)) {