File nextfiles.diff of Package rpm

--- lib/rpmtriggers.c.orig	2024-12-19 14:05:56.403437646 +0000
+++ lib/rpmtriggers.c	2024-12-19 14:11:56.646774439 +0000
@@ -239,31 +239,33 @@ typedef struct matchFilesIter_s {
 static rpmfiles rpmtsNextFiles(matchFilesIter mfi)
 {
     Header h;
-    rpmte *te;
     rpmfiles files = NULL;
+    const char *pkgname = NULL;
     rpmstrPool pool = mfi->ts->members->pool;
     int ix;
-    unsigned int offset;
 
     ix = rpmdbGetIteratorIndex(mfi->pi);
     if (ix < rpmdbGetIteratorCount(mfi->pi)) {
-	offset = rpmdbGetIteratorOffsetFor(mfi->pi, ix);
+	unsigned int offset = rpmdbGetIteratorOffsetFor(mfi->pi, ix);
+	rpmte *te;
 	if (packageHashGetEntry(mfi->ts->members->removedPackages, offset,
 				&te, NULL, NULL)) {
 	    /* Files are available in memory */
 	    files  = rpmteFiles(te[0]);
+	    pkgname = rpmteN(te[0]);
 	}
 
 	if (packageHashGetEntry(mfi->ts->members->installedPackages, offset,
 				&te, NULL, NULL)) {
 	    /* Files are available in memory */
 	    files  = rpmteFiles(te[0]);
+	    pkgname = rpmteN(te[0]);
 	}
     }
 
     if (files) {
 	rpmdbSetIteratorIndex(mfi->pi, ix + 1);
-	mfi->pkgname = rpmteN(te[0]);
+	mfi->pkgname = pkgname;
     } else {
 	/* Files are not available in memory. Read them from rpmdb */
 	h = rpmdbNextIterator(mfi->pi);
openSUSE Build Service is sponsored by