RPM Community Forums

Mailing List Message of <rpm-cvs>

[CVS] RPM: rpm/ CHANGES rpm/build/ files.c pack.c spec.c rpm/lib/ libr...

From: Jeff Johnson <jbj@rpm5.org>
Date: Sat 24 Nov 2007 - 20:46:07 CET
Message-Id: <20071124194607.8651134844E@rpm5.org>
  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:   24-Nov-2007 20:46:07
  Branch: HEAD                             Handle: 2007112419460502

  Modified files:
    rpm                     CHANGES
    rpm/build               files.c pack.c spec.c
    rpm/lib                 librpm.vers poptALL.c psm.c query.c rpmchecksig.c
                            rpmcli.h rpmfi.c rpminstall.c rpmts.c
    rpm/perl                RPM_Header.xs RPM_Spec.xs
    rpm/python              header-py.c
    rpm/rpmdb               hdrfmt.c librpmdb.vers rpmdb.c rpmtag.h

  Log:
    - use NULL default, not rpmTagTable, arg to headerSprintf everywhere.
    - hdrfmt.c: relocate (and extend) rpmDisplayQueryTags.

  Summary:
    Revision    Changes     Path
    1.1882      +2  -0      rpm/CHANGES
    1.291       +1  -1      rpm/build/files.c
    2.255       +1  -1      rpm/build/pack.c
    2.161       +1  -1      rpm/build/spec.c
    1.26        +0  -1      rpm/lib/librpm.vers
    2.56        +1  -1      rpm/lib/poptALL.c
    2.265       +1  -1      rpm/lib/psm.c
    2.195       +1  -58     rpm/lib/query.c
    1.197       +1  -1      rpm/lib/rpmchecksig.c
    2.75        +0  -8      rpm/lib/rpmcli.h
    2.102       +1  -1      rpm/lib/rpmfi.c
    1.184       +2  -2      rpm/lib/rpminstall.c
    2.124       +1  -1      rpm/lib/rpmts.c
    1.15        +1  -1      rpm/perl/RPM_Header.xs
    1.6         +1  -1      rpm/perl/RPM_Spec.xs
    1.83        +1  -1      rpm/python/header-py.c
    1.39        +71 -0      rpm/rpmdb/hdrfmt.c
    1.30        +1  -0      rpm/rpmdb/librpmdb.vers
    1.219       +2  -2      rpm/rpmdb/rpmdb.c
    1.11        +12 -0      rpm/rpmdb/rpmtag.h
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: rpm/CHANGES
  ============================================================================
  $ cvs diff -u -r1.1881 -r1.1882 CHANGES
  --- rpm/CHANGES	24 Nov 2007 18:48:15 -0000	1.1881
  +++ rpm/CHANGES	24 Nov 2007 19:46:05 -0000	1.1882
  @@ -1,4 +1,6 @@
   5.0a2 -> 5.0a3:
  +    - jbj: use NULL default, not rpmTagTable, arg to headerSprintf everywhere.
  +    - jbj: hdrfmt.c: relocate (and extend) rpmDisplayQueryTags.
       - jbj: add tag{Clean,Name,Value,Type} methods to librpmdb.
       - jbj: lose header.h in favor of rpmtag.h several places.
       - jbj: make "struct headerTagTableEntry_s" opaque.
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/build/files.c
  ============================================================================
  $ cvs diff -u -r1.290 -r1.291 files.c
  --- rpm/build/files.c	22 Nov 2007 19:50:18 -0000	1.290
  +++ rpm/build/files.c	24 Nov 2007 19:46:05 -0000	1.291
  @@ -1030,7 +1030,7 @@
   			_docdir_fmt = "%{NAME}-%{VERSION}";
   		    oneshot = 1;
   		}
  -		fmt = headerSprintf(pkg->header, _docdir_fmt, rpmTagTable, rpmHeaderFormats, &errstr);
  +		fmt = headerSprintf(pkg->header, _docdir_fmt, NULL, rpmHeaderFormats, &errstr);
   		if (!fmt) {
   		    rpmlog(RPMLOG_ERR, _("illegal _docdir_fmt: %s\n"), errstr);
   		    fl->processingFailed = 1;
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/build/pack.c
  ============================================================================
  $ cvs diff -u -r2.254 -r2.255 pack.c
  --- rpm/build/pack.c	22 Nov 2007 18:50:25 -0000	2.254
  +++ rpm/build/pack.c	24 Nov 2007 19:46:05 -0000	2.255
  @@ -1020,7 +1020,7 @@
   	
   	{   const char *binFormat = rpmGetPath("%{_rpmfilename}", NULL);
   	    char *binRpm, *binDir;
  -	    binRpm = headerSprintf(pkg->header, binFormat, rpmTagTable,
  +	    binRpm = headerSprintf(pkg->header, binFormat, NULL,
   			       rpmHeaderFormats, &errorString);
   	    binFormat = _free(binFormat);
   	    if (binRpm == NULL) {
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/build/spec.c
  ============================================================================
  $ cvs diff -u -r2.160 -r2.161 spec.c
  --- rpm/build/spec.c	10 Nov 2007 18:06:41 -0000	2.160
  +++ rpm/build/spec.c	24 Nov 2007 19:46:05 -0000	2.161
  @@ -692,7 +692,7 @@
   	msgstr = _free(msgstr);
   
   	/* XXX this should use queryHeader(), but prints out tn as well. */
  -	msgstr = headerSprintf(h, fmt, rpmTagTable, rpmHeaderFormats, &errstr);
  +	msgstr = headerSprintf(h, fmt, NULL, rpmHeaderFormats, &errstr);
   	if (msgstr == NULL) {
   	    rpmlog(RPMLOG_ERR, _("can't query %s: %s\n"), tn, errstr);
   	    return;
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/lib/librpm.vers
  ============================================================================
  $ cvs diff -u -r1.25 -r1.26 librpm.vers
  --- rpm/lib/librpm.vers	10 Nov 2007 19:35:59 -0000	1.25
  +++ rpm/lib/librpm.vers	24 Nov 2007 19:46:05 -0000	1.26
  @@ -87,7 +87,6 @@
       rpmcliSign;
       rpmcliTargets;
       rpmcliVerify;
  -    rpmDisplayQueryTags;
       rpmdsAnyMatchesDep;
       rpmdsBT;
       rpmdsColor;
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/lib/poptALL.c
  ============================================================================
  $ cvs diff -u -r2.55 -r2.56 poptALL.c
  --- rpm/lib/poptALL.c	24 Nov 2007 18:48:15 -0000	2.55
  +++ rpm/lib/poptALL.c	24 Nov 2007 19:46:05 -0000	2.56
  @@ -268,7 +268,7 @@
   	exit(EXIT_SUCCESS);
   	/*@notreached@*/ break;
       case POPT_QUERYTAGS:
  -	rpmDisplayQueryTags(stdout);
  +	rpmDisplayQueryTags(NULL, NULL, NULL);
   /*@i@*/	con = rpmcliFini(con);
   	exit(EXIT_SUCCESS);
   	/*@notreached@*/ break;
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/lib/psm.c
  ============================================================================
  $ cvs diff -u -r2.264 -r2.265 psm.c
  --- rpm/lib/psm.c	22 Nov 2007 22:28:14 -0000	2.264
  +++ rpm/lib/psm.c	24 Nov 2007 19:46:05 -0000	2.265
  @@ -1749,7 +1749,7 @@
   		xx = snprintf(tiddn, sizeof(tiddn), "%d", rpmtsGetTid(ts));
   		bfmt = rpmGetPath(tiddn, "/", "%{_repackage_name_fmt}", NULL);
   		pkgbn = headerSprintf(fi->h, bfmt,
  -					rpmTagTable, rpmHeaderFormats, NULL);
  +					NULL, rpmHeaderFormats, NULL);
   		bfmt = _free(bfmt);
   		psm->pkgURL = rpmGenPath("%{?_repackage_root}",
   					 "%{?_repackage_dir}",
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/lib/query.c
  ============================================================================
  $ cvs diff -u -r2.194 -r2.195 query.c
  --- rpm/lib/query.c	24 Nov 2007 17:18:57 -0000	2.194
  +++ rpm/lib/query.c	24 Nov 2007 19:46:05 -0000	2.195
  @@ -117,7 +117,7 @@
       const char * str;
   
   /*@-modobserver@*/
  -    str = headerSprintf(h, qfmt, rpmTagTable, rpmHeaderFormats, &errstr);
  +    str = headerSprintf(h, qfmt, NULL, rpmHeaderFormats, &errstr);
   /*@=modobserver@*/
       if (str == NULL)
   	rpmlog(RPMLOG_ERR, _("incorrect format: %s\n"), errstr);
  @@ -354,63 +354,6 @@
       return rc;
   }
   
  -void rpmDisplayQueryTags(FILE * fp)
  -{
  -    const struct headerTagTableEntry_s * t;
  -    uint32_t ttype;
  -    headerSprintfExtension exts = rpmHeaderFormats;
  -    headerSprintfExtension ext;
  -    int extNum;
  -    int i;
  -
  -    for (i = 0, t = rpmTagTable; i < rpmTagTableSize; i++, t++) {
  -	if (t->name == NULL)
  -	    continue;
  -	if (rpmIsVerbose()) {
  -	    /*@observer@*/
  -	    static const char * tagtypes[] = {
  -		"", "char", "uint8", "uint16", "uint32", "uint64",
  -		"string", "octets", "argv", "i18nstring",
  -	    };
  -	    fprintf(fp, "%-20s %6d", t->name + 7, t->val);
  -	    ttype = t->type & RPM_MASK_TYPE;
  -	    if (ttype < RPM_MIN_TYPE || ttype > RPM_MAX_TYPE)
  -		continue;
  -	    if (t->type & RPM_OPENPGP_RETURN_TYPE)
  -		fprintf(fp, " openpgp");
  -	    if (t->type & RPM_X509_RETURN_TYPE)
  -		fprintf(fp, " x509");
  -	    if (t->type & RPM_ASN1_RETURN_TYPE)
  -		fprintf(fp, " asn1");
  -	    if (t->type & RPM_OPAQUE_RETURN_TYPE)
  -		fprintf(fp, " opaque");
  -	    fprintf(fp, " %s", tagtypes[ttype]);
  -	    if (t->type & RPM_ARRAY_RETURN_TYPE)
  -		fprintf(fp, " array");
  -	    if (t->type & RPM_MAPPING_RETURN_TYPE)
  -		fprintf(fp, " mapping");
  -	    if (t->type & RPM_PROBE_RETURN_TYPE)
  -		fprintf(fp, " probe");
  -	    if (t->type & RPM_TREE_RETURN_TYPE)
  -		fprintf(fp, " tree");
  -	} else
  -	    fprintf(fp, "%s", t->name + 7);
  -	fprintf(fp, "\n");
  -    }
  -
  -    for (ext = exts, extNum = 0; ext != NULL && ext->type != HEADER_EXT_LAST;
  -	ext = (ext->type == HEADER_EXT_MORE ? *ext->u.more : ext+1), extNum++)
  -    {
  -	if (ext->name == NULL || ext->type != HEADER_EXT_TAG)
  -	    continue;
  -
  -	/* XXX don't print header tags twice. */
  -	if (tagValue(ext->name) > 0)
  -	    continue;
  -	fprintf(fp, "%s\n", ext->name + 7);
  -    }
  -}
  -
   static int rpmgiShowMatches(QVA_t qva, rpmts ts)
   	/*@globals rpmGlobalMacroContext, h_errno, internalState @*/
           /*@modifies qva, rpmGlobalMacroContext, h_errno, internalState @*/
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/lib/rpmchecksig.c
  ============================================================================
  $ cvs diff -u -r1.196 -r1.197 rpmchecksig.c
  --- rpm/lib/rpmchecksig.c	23 Nov 2007 16:35:43 -0000	1.196
  +++ rpm/lib/rpmchecksig.c	24 Nov 2007 19:46:05 -0000	1.197
  @@ -550,7 +550,7 @@
   
       he->append = 0;
   
  -    d = headerSprintf(h, afmt, rpmTagTable, rpmHeaderFormats, NULL);
  +    d = headerSprintf(h, afmt, NULL, rpmHeaderFormats, NULL);
       if (d == NULL)
   	goto exit;
   
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/lib/rpmcli.h
  ============================================================================
  $ cvs diff -u -r2.74 -r2.75 rpmcli.h
  --- rpm/lib/rpmcli.h	19 Nov 2007 18:57:54 -0000	2.74
  +++ rpm/lib/rpmcli.h	24 Nov 2007 19:46:05 -0000	2.75
  @@ -310,14 +310,6 @@
   	/*@modifies qva, rpmGlobalMacroContext, fileSystem, internalState @*/;
   
   /** \ingroup rpmcli
  - * Display list of tags that can be used in --queryformat.
  - * @param fp	file handle to use for display
  - */
  -void rpmDisplayQueryTags(FILE * fp)
  -	/*@globals fileSystem, internalState @*/
  -	/*@modifies *fp, fileSystem, internalState @*/;
  -
  -/** \ingroup rpmcli
    * Common query/verify source interface, called once for each CLI arg.
    *
    * This routine uses:
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/lib/rpmfi.c
  ============================================================================
  $ cvs diff -u -r2.101 -r2.102 rpmfi.c
  --- rpm/lib/rpmfi.c	22 Nov 2007 22:28:14 -0000	2.101
  +++ rpm/lib/rpmfi.c	24 Nov 2007 19:46:05 -0000	2.102
  @@ -1450,7 +1450,7 @@
   	Header foo;
   
   	/* XXX error handling. */
  -	newPath = headerSprintf(h, fmt, rpmTagTable, rpmHeaderFormats, &errstr);
  +	newPath = headerSprintf(h, fmt, NULL, rpmHeaderFormats, &errstr);
   	fmt = _free(fmt);
   
   	/* XXX Make sure autoreloc is not already specified. */
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/lib/rpminstall.c
  ============================================================================
  $ cvs diff -u -r1.183 -r1.184 rpminstall.c
  --- rpm/lib/rpminstall.c	22 Nov 2007 22:28:14 -0000	1.183
  +++ rpm/lib/rpminstall.c	24 Nov 2007 19:46:05 -0000	1.184
  @@ -150,7 +150,7 @@
   	/* @todo Remove headerSprintf() on a progress callback. */
   	if (flags & INSTALL_HASH) {
   	    s = headerSprintf(h, "%{NAME}",
  -				rpmTagTable, rpmHeaderFormats, NULL);
  +				NULL, rpmHeaderFormats, NULL);
   	    if (isatty (STDOUT_FILENO))
   		fprintf(stdout, "%4d:%-23.23s", (int)rpmcliProgressCurrent + 1, s);
   	    else
  @@ -159,7 +159,7 @@
   	    s = _free(s);
   	} else {
   	    s = headerSprintf(h, "%{NAME}-%{VERSION}-%{RELEASE}",
  -				  rpmTagTable, rpmHeaderFormats, NULL);
  +				  NULL, rpmHeaderFormats, NULL);
   	    fprintf(stdout, "%s\n", s);
   	    (void) fflush(stdout);
   	    s = _free(s);
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/lib/rpmts.c
  ============================================================================
  $ cvs diff -u -r2.123 -r2.124 rpmts.c
  --- rpm/lib/rpmts.c	22 Nov 2007 22:28:14 -0000	2.123
  +++ rpm/lib/rpmts.c	24 Nov 2007 19:46:05 -0000	2.124
  @@ -393,7 +393,7 @@
       qfmt = rpmExpand("%{?_solve_name_fmt}", NULL);
       if (qfmt == NULL || *qfmt == '\0')
   	goto exit;
  -    str = headerSprintf(bh, qfmt, rpmTagTable, rpmHeaderFormats, &errstr);
  +    str = headerSprintf(bh, qfmt, NULL, rpmHeaderFormats, &errstr);
       bh = headerFree(bh);
       qfmt = _free(qfmt);
       if (str == NULL) {
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/perl/RPM_Header.xs
  ============================================================================
  $ cvs diff -u -r1.14 -r1.15 RPM_Header.xs
  --- rpm/perl/RPM_Header.xs	22 Nov 2007 22:28:16 -0000	1.14
  +++ rpm/perl/RPM_Header.xs	24 Nov 2007 19:46:06 -0000	1.15
  @@ -135,7 +135,7 @@
       PREINIT:
   	const char * s;
       PPCODE:
  -	s =  headerSprintf(h, format, rpmTagTable, rpmHeaderFormats, NULL);
  +	s =  headerSprintf(h, format, NULL, rpmHeaderFormats, NULL);
       if (s)
   	    PUSHs(sv_2mortal(newSVpv((char *)s, 0)));
   	s = _free(s); 
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/perl/RPM_Spec.xs
  ============================================================================
  $ cvs diff -u -r1.5 -r1.6 RPM_Spec.xs
  --- rpm/perl/RPM_Spec.xs	22 Nov 2007 22:28:16 -0000	1.5
  +++ rpm/perl/RPM_Spec.xs	24 Nov 2007 19:46:06 -0000	1.6
  @@ -104,7 +104,7 @@
       srctag = headerSprintf(
           spec->packages->header,
           "%{NAME}-%{VERSION}-%{RELEASE}",
  -        rpmTagTable,
  +        NULL,
           rpmHeaderFormats,
           NULL
       );
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/python/header-py.c
  ============================================================================
  $ cvs diff -u -r1.82 -r1.83 header-py.c
  --- rpm/python/header-py.c	24 Nov 2007 17:18:57 -0000	1.82
  +++ rpm/python/header-py.c	24 Nov 2007 19:46:06 -0000	1.83
  @@ -283,7 +283,7 @@
       if (!PyArg_ParseTupleAndKeywords(args, kwds, "s", kwlist, &fmt))
   	return NULL;
   
  -    r = headerSprintf(s->h, fmt, rpmTagTable, rpmHeaderFormats, &err);
  +    r = headerSprintf(s->h, fmt, NULL, rpmHeaderFormats, &err);
       if (!r) {
   	PyErr_SetString(pyrpmError, err);
   	return NULL;
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/rpmdb/hdrfmt.c
  ============================================================================
  $ cvs diff -u -r1.38 -r1.39 hdrfmt.c
  --- rpm/rpmdb/hdrfmt.c	24 Nov 2007 17:18:58 -0000	1.38
  +++ rpm/rpmdb/hdrfmt.c	24 Nov 2007 19:46:07 -0000	1.39
  @@ -5,6 +5,7 @@
   #include "system.h"
   
   #include "rpmio_internal.h"
  +#include <rpmcb.h>	/* XXX rpmIsVerbose */
   #include <rpmmacro.h>	/* XXX for %_i18ndomains */
   
   #define	_RPMTAG_INTERNAL
  @@ -1389,3 +1390,73 @@
   /*@=type@*/
   
   headerSprintfExtension headerCompoundFormats = &_headerCompoundFormats[0];
  +
  +void rpmDisplayQueryTags(FILE * fp, headerTagTableEntry _rpmTagTable, headerSprintfExtension _rpmHeaderFormats)
  +{
  +    const struct headerTagTableEntry_s * t;
  +    headerSprintfExtension exts;
  +    headerSprintfExtension ext;
  +    int extNum;
  +    int i;
  +
  +    if (fp == NULL)
  +	fp = stdout;
  +    if (_rpmTagTable == NULL)
  +	_rpmTagTable = rpmTagTable;
  +
  +    /* XXX this should use rpmHeaderFormats, but there are linkage problems. */
  +    if (_rpmHeaderFormats == NULL)
  +	_rpmHeaderFormats = headerCompoundFormats;
  +
  +/* XXX FIXME: don't use rpmTagTableSize here. */
  +assert(_rpmTagTable == rpmTagTable);
  +    for (i = 0, t = _rpmTagTable; i < rpmTagTableSize; i++, t++) {
  +	uint32_t ttype;
  +
  +	if (t->name == NULL)
  +	    continue;
  +	if (rpmIsVerbose()) {
  +	    /*@observer@*/
  +	    static const char * tagtypes[] = {
  +		"", "char", "uint8", "uint16", "uint32", "uint64",
  +		"string", "octets", "argv", "i18nstring",
  +	    };
  +	    fprintf(fp, "%-20s %6d", t->name + 7, t->val);
  +	    ttype = t->type & RPM_MASK_TYPE;
  +	    if (ttype < RPM_MIN_TYPE || ttype > RPM_MAX_TYPE)
  +		continue;
  +	    if (t->type & RPM_OPENPGP_RETURN_TYPE)
  +		fprintf(fp, " openpgp");
  +	    if (t->type & RPM_X509_RETURN_TYPE)
  +		fprintf(fp, " x509");
  +	    if (t->type & RPM_ASN1_RETURN_TYPE)
  +		fprintf(fp, " asn1");
  +	    if (t->type & RPM_OPAQUE_RETURN_TYPE)
  +		fprintf(fp, " opaque");
  +	    fprintf(fp, " %s", tagtypes[ttype]);
  +	    if (t->type & RPM_ARRAY_RETURN_TYPE)
  +		fprintf(fp, " array");
  +	    if (t->type & RPM_MAPPING_RETURN_TYPE)
  +		fprintf(fp, " mapping");
  +	    if (t->type & RPM_PROBE_RETURN_TYPE)
  +		fprintf(fp, " probe");
  +	    if (t->type & RPM_TREE_RETURN_TYPE)
  +		fprintf(fp, " tree");
  +	} else
  +	    fprintf(fp, "%s", t->name + 7);
  +	fprintf(fp, "\n");
  +    }
  +
  +    exts = _rpmHeaderFormats;
  +    for (ext = exts, extNum = 0; ext != NULL && ext->type != HEADER_EXT_LAST;
  +	ext = (ext->type == HEADER_EXT_MORE ? *ext->u.more : ext+1), extNum++)
  +    {
  +	if (ext->name == NULL || ext->type != HEADER_EXT_TAG)
  +	    continue;
  +
  +	/* XXX don't print header tags twice. */
  +	if (tagValue(ext->name) > 0)
  +	    continue;
  +	fprintf(fp, "%s\n", ext->name + 7);
  +    }
  +}
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/rpmdb/librpmdb.vers
  ============================================================================
  $ cvs diff -u -r1.29 -r1.30 librpmdb.vers
  --- rpm/rpmdb/librpmdb.vers	24 Nov 2007 18:48:16 -0000	1.29
  +++ rpm/rpmdb/librpmdb.vers	24 Nov 2007 19:46:07 -0000	1.30
  @@ -81,6 +81,7 @@
       rpmdbSync;
       rpmdbVerify;
       rpmdbVerifyAllDBI;
  +    rpmDisplayQueryTags;
       rpmpkgCheck;
       rpmpkgClean;
       rpmpkgRead;
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/rpmdb/rpmdb.c
  ============================================================================
  $ cvs diff -u -r1.218 -r1.219 rpmdb.c
  --- rpm/rpmdb/rpmdb.c	24 Nov 2007 17:18:58 -0000	1.218
  +++ rpm/rpmdb/rpmdb.c	24 Nov 2007 19:46:07 -0000	1.219
  @@ -829,7 +829,7 @@
   
   /**
    * Return header query string.
  - * @warning Only default header extensions are available here.
  + * @warning Only compound header extensions are available here.
    * @param h		header
    * @param qfmt		header sprintf format
    * @return		header query string
  @@ -841,7 +841,7 @@
       const char * str;
   
   /*@-modobserver@*/
  -    str = headerSprintf(h, qfmt, rpmTagTable, headerDefaultFormats, &errstr);
  +    str = headerSprintf(h, qfmt, NULL, headerCompoundFormats, &errstr);
   /*@=modobserver@*/
       if (str == NULL)
   	rpmlog(RPMLOG_ERR, _("incorrect format: \"%s\": %s\n"), qfmt, errstr);
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/rpmdb/rpmtag.h
  ============================================================================
  $ cvs diff -u -r1.10 -r1.11 rpmtag.h
  --- rpm/rpmdb/rpmtag.h	24 Nov 2007 18:48:16 -0000	1.10
  +++ rpm/rpmdb/rpmtag.h	24 Nov 2007 19:46:07 -0000	1.11
  @@ -618,6 +618,18 @@
   extern headerSprintfExtension headerCompoundFormats;
   /*@=redecl@*/
   
  +/**
  + * Display list of tags that can be used in --queryformat.
  + * @param fp		file handle to use for display (NULL uses stdout)
  + * @param _rpmTagTable	rpm tag table (NULL uses rpmTagTable)
  + * @param _rpmHeaderFormats	rpm tag extensions & formats (NULL uses headerCompoundFormats)
  + */
  +void rpmDisplayQueryTags(/*@null@*/ FILE * fp,
  +		/*@null@*/ headerTagTableEntry _rpmTagTable,
  +		/*@null@*/ headerSprintfExtension _rpmHeaderFormats)
  +	/*@globals fileSystem, internalState @*/
  +	/*@modifies *fp, fileSystem, internalState @*/;
  +
   #ifdef __cplusplus
   }
   #endif
  @@ .
Received on Sat Nov 24 20:46:07 2007
Driven by Jeff Johnson and the RPM project team.
Hosted by OpenPKG and Ralf S. Engelschall.
Powered by FreeBSD and OpenPKG.