summaryrefslogtreecommitdiff
path: root/lib/rpmds.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rpmds.c')
-rw-r--r--lib/rpmds.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/rpmds.c b/lib/rpmds.c
index 7e6582a09..6f7d674ad 100644
--- a/lib/rpmds.c
+++ b/lib/rpmds.c
@@ -195,8 +195,9 @@ rpmds rpmdsNewPool(rpmstrPool pool, Header h, rpmTagVal tagN, int flags)
rpmtdFreeData(&names);
rpmtdFreeData(&evr);
- /* freeze the pool to save memory and lock strings in place */
- rpmstrPoolFreeze(ds->pool);
+ /* freeze the pool to save memory, but only if private pool */
+ if (ds->pool != pool)
+ rpmstrPoolFreeze(ds->pool);
}
exit: