RPM Community Forums

Mailing List Message of <rpm-cvs>

[CVS] RPM: rpm/ CHANGES rpm/rpmdb/ header.c rpmtag.h

From: Jeff Johnson <jbj@rpm5.org>
Date: Mon 04 Feb 2008 - 00:19:59 CET
Message-Id: <20080203231959.14E15348458@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:   04-Feb-2008 00:19:59
  Branch: HEAD                             Handle: 2008020323195800

  Modified files:
    rpm                     CHANGES
    rpm/rpmdb               header.c rpmtag.h

  Log:
    - fix: poldek in PLD needs replacement for headerGetRawEntry().

  Summary:
    Revision    Changes     Path
    1.2129      +1  -0      rpm/CHANGES
    1.147       +12 -8      rpm/rpmdb/header.c
    1.40        +1  -0      rpm/rpmdb/rpmtag.h
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: rpm/CHANGES
  ============================================================================
  $ cvs diff -u -r1.2128 -r1.2129 CHANGES
  --- rpm/CHANGES	3 Feb 2008 20:12:32 -0000	1.2128
  +++ rpm/CHANGES	3 Feb 2008 23:19:58 -0000	1.2129
  @@ -1,4 +1,5 @@
   5.0.0 -> 5.1a1:
  +    - jbj: fix: poldek in PLD needs replacement for headerGetRawEntry().
       - jbj: add rpmcliWalkFirst() to search (possibly multiple) dirs.
       - rse: add _rpmgi_pattern_{glob,regex} macros for "+N" arg-to-path rewrite.
       - jbj: functional "+N-V-R.A" path-to-repository expansions with -i/-U.
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/rpmdb/header.c
  ============================================================================
  $ cvs diff -u -r1.146 -r1.147 header.c
  --- rpm/rpmdb/header.c	16 Dec 2007 23:21:23 -0000	1.146
  +++ rpm/rpmdb/header.c	3 Feb 2008 23:19:58 -0000	1.147
  @@ -1433,12 +1433,13 @@
    * Retrieve tag data from header.
    * @param h		header
    * @param he		tag container
  - * @param minMem	string pointers reference header memory?
  + * @param flags		headerGet flags
    * @return		1 on success, 0 on not found
    */
  -static int intGetEntry(Header h, HE_t he, int minMem)
  +static int intGetEntry(Header h, HE_t he, int flags)
   	/*@modifies he @*/
   {
  +    int minMem = 0;
       indexEntry entry;
       int rc;
   
  @@ -1455,13 +1456,16 @@
   
       switch (entry->info.type) {
       case RPM_I18NSTRING_TYPE:
  -	rc = 1;
  -	he->t = RPM_STRING_TYPE;
  -	he->c = 1;
  +	if (!(flags & HEADERGET_NOI18NSTRING)) {
  +	    rc = 1;
  +	    he->t = RPM_STRING_TYPE;
  +	    he->c = 1;
   /*@-dependenttrans@*/
  -	he->p.str = headerFindI18NString(h, entry);
  +	    he->p.str = headerFindI18NString(h, entry);
   /*@=dependenttrans@*/
  -	break;
  +	    break;
  +	}
  +	/*@fallthrough@*/
       default:
   	rc = copyEntry(entry, he, minMem);
   	break;
  @@ -2032,7 +2036,7 @@
   	rc = ext->u.tagFunction(h, he);
   	rc = (rc == 0);		/* XXX invert extension return. */
       } else
  -	rc = intGetEntry(h, he, 0);
  +	rc = intGetEntry(h, he, flags);
   
       if (rc)
   	rc = rpmheRealloc(he);
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/rpmdb/rpmtag.h
  ============================================================================
  $ cvs diff -u -r1.39 -r1.40 rpmtag.h
  --- rpm/rpmdb/rpmtag.h	1 Feb 2008 19:45:54 -0000	1.39
  +++ rpm/rpmdb/rpmtag.h	3 Feb 2008 23:19:58 -0000	1.40
  @@ -726,6 +726,7 @@
   int headerGet(Header h, HE_t he, unsigned int flags)
   	/*@modifies he @*/;
   #define	HEADERGET_NOEXTENSION	(1 << 0) /*!< Extension search disabler. */
  +#define	HEADERGET_NOI18NSTRING	(1 << 1) /*!< Return i18n strings as argv. */
   
   /** \ingroup header
    * Add or append tag container to header.
  @@ .
Received on Mon Feb 4 00:19:59 2008
Driven by Jeff Johnson and the RPM project team.
Hosted by OpenPKG and Ralf S. Engelschall.
Powered by FreeBSD and OpenPKG.