Use transaction string pool for rpmlib() dependencies too
authorPanu Matilainen <pmatilai@redhat.com>
Thu, 13 Sep 2012 08:55:52 +0000 (11:55 +0300)
committerPanu Matilainen <pmatilai@redhat.com>
Thu, 13 Sep 2012 08:55:52 +0000 (11:55 +0300)
- This wasn't possible with the former static rpmlib() dependency set
  as it would've kept the potentially huge global pool referenced
  throughout process lifetime.

lib/depends.c

index f9d21c3..c100451 100644 (file)
@@ -532,7 +532,7 @@ retry:
      */
     if (dsflags & RPMSENSE_RPMLIB) {
        if (tsmem->rpmlib == NULL)
-           rpmdsRpmlib(&(tsmem->rpmlib), NULL);
+           rpmdsRpmlibPool(tsmem->pool, &(tsmem->rpmlib), NULL);
        
        if (tsmem->rpmlib != NULL && rpmdsSearch(tsmem->rpmlib, dep) >= 0) {
            rpmdsNotify(dep, "(rpmlib provides)", rc);