From 20bf602a2648434d9adc5fda0fb76af0d5766961 Mon Sep 17 00:00:00 2001 From: Panu Matilainen Date: Fri, 14 Sep 2012 14:21:45 +0300 Subject: [PATCH] Switch fingerprinting to use the global string pool - Transaction preparation fingerprinting now shares all the strings from rpmfi's etc. Rpmdb basename iterator still needs a private pool as there's nowhere to get a pool handle (for now at least). - We no longer need to (and actually we couldn't) freeze the pool before fingerprinting. --- lib/transaction.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/lib/transaction.c b/lib/transaction.c index 008fe15..7eefdc7 100644 --- a/lib/transaction.c +++ b/lib/transaction.c @@ -1290,10 +1290,7 @@ static int rpmtsPrepare(rpmts ts) const char *dbhome = NULL; struct stat dbstat; - /* Required for now to lock string pointers in memory */ - rpmstrPoolFreeze(tsmem->pool, 1); - - fingerPrintCache fpc = fpCacheCreate(fileCount/2 + 10001, NULL); + fingerPrintCache fpc = fpCacheCreate(fileCount/2 + 10001, tsmem->pool); rpmlog(RPMLOG_DEBUG, "computing %" PRIu64 " file fingerprints\n", fileCount); -- 2.7.4