From ad9224dbbf684748e45cde69823d128a4ed1facd Mon Sep 17 00:00:00 2001 From: ewt Date: Mon, 12 Apr 1999 16:08:11 +0000 Subject: [PATCH] we were saving a little too much memory CVS patchset: 2982 CVS date: 1999/04/12 16:08:11 --- lib/transaction.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/lib/transaction.c b/lib/transaction.c index b26986d..3c06cf1 100644 --- a/lib/transaction.c +++ b/lib/transaction.c @@ -300,20 +300,20 @@ int rpmRunTransactions(rpmTransactionSet ts, rpmCallbackFunction notify, if (!fi->actions) fi->actions = calloc(sizeof(*fi->actions), fi->fc); - headerGetEntryMinMemory(fi->h, RPMTAG_FILEMD5S, NULL, - (void *) &fi->fmd5s, NULL); - headerGetEntryMinMemory(fi->h, RPMTAG_FILELINKTOS, NULL, - (void *) &fi->flinks, NULL); - headerGetEntryMinMemory(fi->h, RPMTAG_FILEMODES, NULL, + headerGetEntry(fi->h, RPMTAG_FILEMODES, NULL, (void *) &fi->fmodes, NULL); - headerGetEntryMinMemory(fi->h, RPMTAG_FILEFLAGS, NULL, + headerGetEntry(fi->h, RPMTAG_FILEFLAGS, NULL, (void *) &fi->fflags, NULL); - headerGetEntryMinMemory(fi->h, RPMTAG_FILESIZES, NULL, + headerGetEntry(fi->h, RPMTAG_FILESIZES, NULL, (void *) &fi->fsizes, NULL); - headerGetEntryMinMemory(fi->h, RPMTAG_FILESTATES, NULL, + headerGetEntry(fi->h, RPMTAG_FILESTATES, NULL, (void *) &fi->fstates, NULL); if (ts->order[oc].type == TR_REMOVED) { + headerGetEntry(fi->h, RPMTAG_FILEMD5S, NULL, + (void *) &fi->fmd5s, NULL); + headerGetEntry(fi->h, RPMTAG_FILELINKTOS, NULL, + (void *) &fi->flinks, NULL); fi->fsizes = memcpy(malloc(fi->fc * sizeof(*fi->fsizes)), fi->fsizes, fi->fc * sizeof(*fi->fsizes)); fi->fflags = memcpy(malloc(fi->fc * sizeof(*fi->fflags)), @@ -327,6 +327,11 @@ int rpmRunTransactions(rpmTransactionSet ts, rpmCallbackFunction notify, } else { /* ADDED package */ + headerGetEntryMinMemory(fi->h, RPMTAG_FILEMD5S, NULL, + (void *) &fi->fmd5s, NULL); + headerGetEntryMinMemory(fi->h, RPMTAG_FILELINKTOS, NULL, + (void *) &fi->flinks, NULL); + /* 0 makes for noops */ fi->replacedSizes = calloc(fi->fc, sizeof(*fi->replacedSizes)); skipFiles(fi, flags & RPMTRANS_FLAG_NODOCS); -- 2.7.4