RPM Package Manager, CVS Repository
http://rpm5.org/cvs/
____________________________________________________________________________
Server: rpm5.org Name: Jeff Johnson
Root: /v/rpm/cvs Email: jbj@rpm5.org
Module: rpm Date: 21-Aug-2007 04:14:45
Branch: HEAD Handle: 2007082103144400
Modified files:
rpm CHANGES
rpm/lib query.c rpmgi.c rpmgi.h
Log:
- add rpmgiGetFlags() for opaque rpmgi queries.
Summary:
Revision Changes Path
1.1596 +1 -0 rpm/CHANGES
2.177 +5 -6 rpm/lib/query.c
2.32 +5 -0 rpm/lib/rpmgi.c
2.22 +8 -0 rpm/lib/rpmgi.h
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: rpm/CHANGES
============================================================================
$ cvs diff -u -r1.1595 -r1.1596 CHANGES
--- rpm/CHANGES 19 Aug 2007 22:07:21 -0000 1.1595
+++ rpm/CHANGES 21 Aug 2007 02:14:44 -0000 1.1596
@@ -1,4 +1,5 @@
4.5 -> 5.0:
+ - jbj: add rpmgiGetFlags() for opaque rpmgi queries.
- jbj: permit --ftswalk on sign/verify paths. not yet install ...
- jbj: use ftsOpts from CLI where rpmgi is used.
- jbj: insure srpm file dispositions are FA_CREATE.
@@ .
patch -p0 <<'@@ .'
Index: rpm/lib/query.c
============================================================================
$ cvs diff -u -r2.176 -r2.177 query.c
--- rpm/lib/query.c 30 Jul 2007 01:40:35 -0000 2.176
+++ rpm/lib/query.c 21 Aug 2007 02:14:44 -0000 2.177
@@ -17,7 +17,6 @@
#include "rpmdb.h"
#include "rpmfi.h"
-#define _RPMGI_INTERNAL /* XXX for gi->flags */
#include "rpmgi.h"
#include "rpmts.h"
@@ -746,7 +745,7 @@
qva->qva_gi = rpmgiNew(ts, RPMDBI_PACKAGES, NULL, 0);
qva->qva_rc = rpmgiSetArgs(qva->qva_gi, argv, ftsOpts, RPMGI_NONE);
- if (qva->qva_gi != NULL && (qva->qva_gi->flags & RPMGI_TSADD)) /* Load the ts with headers. */
+ if (rpmgiGetFlags(qva->qva_gi) & RPMGI_TSADD) /* Load the ts with headers. */
while ((rpmrc = rpmgiNext(qva->qva_gi)) == RPMRC_OK)
{};
if (rpmrc != RPMRC_NOTFOUND)
@@ -761,7 +760,7 @@
qva->qva_gi = rpmgiNew(ts, RPMDBI_ARGLIST, NULL, 0);
qva->qva_rc = rpmgiSetArgs(qva->qva_gi, argv, ftsOpts, giFlags);
- if (qva->qva_gi != NULL && (qva->qva_gi->flags & RPMGI_TSADD)) /* Load the ts with headers. */
+ if (rpmgiGetFlags(qva->qva_gi) & RPMGI_TSADD) /* Load the ts with headers. */
while ((rpmrc = rpmgiNext(qva->qva_gi)) == RPMRC_OK)
{};
if (rpmrc != RPMRC_NOTFOUND)
@@ -776,7 +775,7 @@
qva->qva_gi = rpmgiNew(ts, RPMDBI_HDLIST, NULL, 0);
qva->qva_rc = rpmgiSetArgs(qva->qva_gi, argv, ftsOpts, giFlags);
- if (qva->qva_gi != NULL && (qva->qva_gi->flags & RPMGI_TSADD)) /* Load the ts with headers. */
+ if (rpmgiGetFlags(qva->qva_gi) & RPMGI_TSADD) /* Load the ts with headers. */
while ((rpmrc = rpmgiNext(qva->qva_gi)) == RPMRC_OK)
{};
if (rpmrc != RPMRC_NOTFOUND)
@@ -793,7 +792,7 @@
qva->qva_gi = rpmgiNew(ts, RPMDBI_FTSWALK, NULL, 0);
qva->qva_rc = rpmgiSetArgs(qva->qva_gi, argv, ftsOpts, giFlags);
- if (qva->qva_gi != NULL && (qva->qva_gi->flags & RPMGI_TSADD)) /* Load the ts with headers. */
+ if (rpmgiGetFlags(qva->qva_gi) & RPMGI_TSADD) /* Load the ts with headers. */
while ((rpmrc = rpmgiNext(qva->qva_gi)) == RPMRC_OK)
{};
if (rpmrc != RPMRC_NOTFOUND)
@@ -809,7 +808,7 @@
qva->qva_gi = rpmgiNew(ts, RPMDBI_LABEL, NULL, 0);
qva->qva_rc = rpmgiSetArgs(qva->qva_gi, argv, ftsOpts,
(giFlags | (RPMGI_NOGLOB )));
- if (qva->qva_gi != NULL && (qva->qva_gi->flags & RPMGI_TSADD)) /* Load the ts with headers. */
+ if (rpmgiGetFlags(qva->qva_gi) & RPMGI_TSADD) /* Load the ts with headers. */
while ((rpmrc = rpmgiNext(qva->qva_gi)) == RPMRC_OK)
{};
if (rpmrc != RPMRC_NOTFOUND)
@@ .
patch -p0 <<'@@ .'
Index: rpm/lib/rpmgi.c
============================================================================
$ cvs diff -u -r2.31 -r2.32 rpmgi.c
--- rpm/lib/rpmgi.c 1 Aug 2007 17:58:35 -0000 2.31
+++ rpm/lib/rpmgi.c 21 Aug 2007 02:14:44 -0000 2.32
@@ -811,6 +811,11 @@
return rpmrc;
}
+rpmgiFlags rpmgiGetFlags(rpmgi gi)
+{
+ return (gi != NULL ? gi->flags : RPMGI_NONE);
+}
+
const char * rpmgiHdrPath(rpmgi gi)
{
return (gi != NULL ? gi->hdrPath : NULL);
@@ .
patch -p0 <<'@@ .'
Index: rpm/lib/rpmgi.h
============================================================================
$ cvs diff -u -r2.21 -r2.22 rpmgi.h
--- rpm/lib/rpmgi.h 25 May 2007 17:36:02 -0000 2.21
+++ rpm/lib/rpmgi.h 21 Aug 2007 02:14:44 -0000 2.22
@@ -162,6 +162,14 @@
/*@modifies gi, rpmGlobalMacroContext, h_errno, internalState @*/;
/**
+ * Return current iteration flags.
+ * @param gi generalized iterator
+ * @returns flags
+ */
+rpmgiFlags rpmgiGetFlags(/*@null@*/ rpmgi gi)
+ /*@*/;
+
+/**
* Return current header path.
* @param gi generalized iterator
* @returns header path
@@ .
Received on Tue Aug 21 04:14:45 2007