summaryrefslogtreecommitdiff
path: root/lib/rpmts_internal.h
diff options
context:
space:
mode:
authorPanu Matilainen <pmatilai@redhat.com>2012-09-12 13:37:54 +0300
committerPanu Matilainen <pmatilai@redhat.com>2012-09-12 13:37:54 +0300
commita3bb7f59a7a3b75d2d13029e8a47b700bf8634dd (patch)
tree894986900d030ae016799db868bba9f6dd282d06 /lib/rpmts_internal.h
parent3226c2073a71818ab45de6784840ccdc28d07b46 (diff)
downloadrpm-a3bb7f59a7a3b75d2d13029e8a47b700bf8634dd.tar.gz
Add infastructure for global transaction set string pool
- Add a pool pointer to to ts members struct and a getter function - Grab the global pool for rpmte dependency- and file info creation, if its NULL then the sets will use private pools of their own. - Add the (currently) required magic voodoo rain-dance to freeze and unfreeze the pool as necessary wrt new element additions: for current rpmal and fingerprinting to work, the string pointers must be immovable. - This is infrastructure only: nothing creates the global pool yet, so everything is still using private pools.
Diffstat (limited to 'lib/rpmts_internal.h')
-rw-r--r--lib/rpmts_internal.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/rpmts_internal.h b/lib/rpmts_internal.h
index 5d3240cf0..a9429106a 100644
--- a/lib/rpmts_internal.h
+++ b/lib/rpmts_internal.h
@@ -2,6 +2,7 @@
#define _RPMTS_INTERNAL_H
#include <rpm/rpmts.h>
+#include <rpm/rpmstrpool.h>
#include "lib/rpmal.h" /* XXX availablePackage */
#include "lib/fprint.h"
@@ -11,6 +12,7 @@ typedef struct diskspaceInfo_s * rpmDiskSpaceInfo;
/* Transaction set elements information */
typedef struct tsMembers_s {
+ rpmstrPool pool; /*!< Global string pool */
removedHash removedPackages; /*!< Set of packages being removed. */
rpmal addedPackages; /*!< Set of packages being installed. */