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