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: 12-Oct-2007 20:55:59
Branch: HEAD Handle: 2007101219555701
Modified files:
rpm CHANGES
rpm/lib depends.c formats.c psm.c rpminstall.c rpmte.c
transaction.c
rpm/python header-py.c
rpm/rpmdb header.c rpmdb.c
Log:
- change to hRET_t for existing headerGetExtension uses.
Summary:
Revision Changes Path
1.1676 +1 -0 rpm/CHANGES
1.345 +2 -2 rpm/lib/depends.c
2.110 +19 -20 rpm/lib/formats.c
2.237 +23 -18 rpm/lib/psm.c
1.171 +3 -3 rpm/lib/rpminstall.c
2.53 +8 -5 rpm/lib/rpmte.c
1.338 +9 -9 rpm/lib/transaction.c
1.57 +12 -11 rpm/python/header-py.c
1.74 +1 -1 rpm/rpmdb/header.c
1.175 +4 -4 rpm/rpmdb/rpmdb.c
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: rpm/CHANGES
============================================================================
$ cvs diff -u -r1.1675 -r1.1676 CHANGES
--- rpm/CHANGES 12 Oct 2007 18:53:48 -0000 1.1675
+++ rpm/CHANGES 12 Oct 2007 18:55:57 -0000 1.1676
@@ -1,4 +1,5 @@
4.5 -> 5.0:
+ - jbj: change to hRET_t for existing headerGetExtension uses.
- bero: Add %optional flag on files (packages a file if it is there,
but doesn't error out if it isn't there)
- bero: Support multiple %files files per package (%files -f f1,f2,...)
@@ .
patch -p0 <<'@@ .'
Index: rpm/lib/depends.c
============================================================================
$ cvs diff -u -r1.344 -r1.345 depends.c
--- rpm/lib/depends.c 11 Oct 2007 19:44:22 -0000 1.344
+++ rpm/lib/depends.c 12 Oct 2007 18:55:57 -0000 1.345
@@ -232,7 +232,7 @@
rc = rpmPlatformScore(platform, platpat, nplatpat);
if (rc <= 0) {
- hRET_t pkgNVRA;
+ hRET_t pkgNVRA = { .ptr = NULL };
rpmps ps = rpmtsProblems(ts);
xx = headerGetExtension(h, RPMTAG_NVRA, NULL, &pkgNVRA, NULL);
assert(pkgNVRA.str != NULL);
@@ -1300,7 +1300,7 @@
(void) rpmdbPruneIterator(mi,
ts->removedPackages, ts->numRemovedPackages, 1);
while ((h = rpmdbNextIterator(mi)) != NULL) {
- hRET_t pkgNVRA;
+ hRET_t pkgNVRA = { .ptr = NULL };
rpmds requires = NULL;
rpmds conflicts = NULL;
rpmds dirnames = NULL;
@@ .
patch -p0 <<'@@ .'
Index: rpm/lib/formats.c
============================================================================
$ cvs diff -u -r2.109 -r2.110 formats.c
--- rpm/lib/formats.c 30 Sep 2007 20:38:25 -0000 2.109
+++ rpm/lib/formats.c 12 Oct 2007 18:55:57 -0000 2.110
@@ -69,42 +69,41 @@
/*@requires maxSet(type) >= 0 /\ maxSet(data) >= 0
/\ maxSet(count) >= 0 /\ maxSet(freeData) >= 0 @*/
{
- HGE_t hge = (HGE_t)headerGetEntryMinMemory;
- const char ** filenames;
- uint_32 * filesizes;
+ HGE_t hge = (HGE_t)headerGetExtension;
+ hRET_t fnames = { .ptr = NULL };
+ hRET_t fsizes = { .ptr = NULL };
uint_64 * usages;
int numFiles;
- int xx;
+ int rc = 1; /* assume error */
- if (!hge(h, RPMTAG_FILESIZES, NULL, &filesizes, &numFiles)) {
- filesizes = NULL;
+ if (!hge(h, RPMTAG_FILESIZES, NULL, &fsizes, NULL)
+ || !hge(h, RPMTAG_FILEPATHS, NULL, &fnames, &numFiles))
+ {
numFiles = 0;
- filenames = NULL;
- } else {
- xx = headerGetExtension(h, RPMTAG_FILEPATHS, NULL, &filenames, &numFiles);
+ fsizes.ui32p = _free(fsizes.ui32p);
+ fnames.argv = _free(fnames.argv);
}
if (rpmGetFilesystemList(NULL, count))
- return 1;
+ goto exit;
*type = RPM_INT64_TYPE;
*freeData = 1;
- if (filenames == NULL) {
+ if (fnames.ptr == NULL)
usages = xcalloc((*count), sizeof(*usages));
- *data = usages;
-
- return 0;
- }
-
- if (rpmGetFilesystemUsage(filenames, filesizes, numFiles, &usages, 0))
- return 1;
+ else
+ if (rpmGetFilesystemUsage(fnames.argv, fsizes.ui32p, numFiles, &usages, 0))
+ goto exit;
*data = usages;
+ rc = 0;
- filenames = _free(filenames);
+exit:
+ fnames.ptr = _free(fnames.ptr);
+ fsizes.ptr = _free(fsizes.ptr);
- return 0;
+ return rc;
}
/**
@@ .
patch -p0 <<'@@ .'
Index: rpm/lib/psm.c
============================================================================
$ cvs diff -u -r2.236 -r2.237 psm.c
--- rpm/lib/psm.c 11 Oct 2007 19:44:22 -0000 2.236
+++ rpm/lib/psm.c 12 Oct 2007 18:55:57 -0000 2.237
@@ -262,7 +262,9 @@
i = fi->fc;
if (fi->h != NULL) { /* XXX can't happen */
- xx = headerGetExtension(fi->h, RPMTAG_FILEPATHS, NULL, &fi->apath, NULL);
+ hRET_t apath = { .ptr = NULL };
+ xx = headerGetExtension(fi->h, RPMTAG_FILEPATHS, NULL, &apath, NULL);
+ fi->apath = apath.argv;
if (headerIsEntry(fi->h, RPMTAG_COOKIE))
for (i = 0; i < fi->fc; i++)
@@ -472,7 +474,7 @@
{
const rpmts ts = psm->ts;
int rootFdno = -1;
- const char * NVRA = NULL;
+ hRET_t NVRA = { .ptr = NULL };
rpmRC rc = RPMRC_OK;
int i;
int xx;
@@ -486,7 +488,7 @@
*ssp |= (RPMSCRIPT_STATE_LUA|RPMSCRIPT_STATE_EXEC);
xx = headerGetExtension(h, RPMTAG_NVRA, NULL, &NVRA, NULL);
-assert(NVRA != NULL);
+assert(NVRA.str != NULL);
/* Save the current working directory. */
/*@-nullpass@*/
@@ -534,7 +536,7 @@
{
char buf[BUFSIZ];
- xx = snprintf(buf, BUFSIZ, "%s(%s)", sln, NVRA);
+ xx = snprintf(buf, BUFSIZ, "%s(%s)", sln, NVRA.str);
xx = rpmluaRunScript(lua, script, buf);
if (xx == -1)
rc = RPMRC_FAIL;
@@ -561,7 +563,7 @@
xx = fchdir(rootFdno);
xx = close(rootFdno);
- NVRA = _free(NVRA);
+ NVRA.ptr = _free(NVRA.ptr);
return rc;
}
@@ -621,7 +623,7 @@
FD_t scriptFd;
FD_t out;
rpmRC rc = RPMRC_FAIL; /* assume failure */
- const char * NVRA = NULL;
+ hRET_t NVRA = { .ptr = NULL };
int * ssp = NULL;
if (psm->sstates != NULL)
@@ -633,13 +635,13 @@
return RPMRC_OK;
xx = headerGetExtension(h, RPMTAG_NVRA, NULL, &NVRA, NULL);
-assert(NVRA != NULL);
+assert(NVRA.str != NULL);
if (progArgv && strcmp(progArgv[0], "<lua>") == 0) {
#ifdef WITH_LUA
rpmlog(RPMLOG_DEBUG,
D_("%s: %s(%s) running <lua> scriptlet.\n"),
- psm->stepName, tag2sln(psm->scriptTag), NVRA);
+ psm->stepName, tag2sln(psm->scriptTag), NVRA.str);
rc = runLuaScript(psm, h, sln, progArgc, progArgv,
script, arg1, arg2);
#endif
@@ -655,7 +657,7 @@
if (ldconfig_done && !strcmp(progArgv[0], ldconfig_path)) {
rpmlog(RPMLOG_DEBUG,
D_("%s: %s(%s) skipping redundant \"%s\".\n"),
- psm->stepName, tag2sln(psm->scriptTag), NVRA,
+ psm->stepName, tag2sln(psm->scriptTag), NVRA.str,
progArgv[0]);
rc = RPMRC_OK;
goto exit;
@@ -664,7 +666,7 @@
rpmlog(RPMLOG_DEBUG,
D_("%s: %s(%s) %ssynchronous scriptlet start\n"),
- psm->stepName, tag2sln(psm->scriptTag), NVRA,
+ psm->stepName, tag2sln(psm->scriptTag), NVRA.str,
(psm->unorderedSuccessor ? "a" : ""));
if (!progArgv) {
@@ -776,7 +778,7 @@
continue;
rpmlog(RPMLOG_DEBUG,
D_("%s: %s(%s)\tfdno(%d) missing FD_CLOEXEC\n"),
- psm->stepName, sln, NVRA,
+ psm->stepName, sln, NVRA.str,
fdno);
xx = fcntl(fdno, F_SETFD, FD_CLOEXEC);
/* XXX W2DO? debug msg for inheirited fdno w/o FD_CLOEXEC */
@@ -830,7 +832,7 @@
}
xx = Chdir("/");
rpmlog(RPMLOG_DEBUG, D_("%s: %s(%s)\texecv(%s) pid %d\n"),
- psm->stepName, sln, NVRA,
+ psm->stepName, sln, NVRA.str,
argv[0], (unsigned)getpid());
/* XXX Don't mtrace into children. */
@@ -872,18 +874,18 @@
if (psm->sq.reaped < 0) {
rpmlog(RPMLOG_ERR,
_("%s(%s) scriptlet failed, waitpid(%d) rc %d: %s\n"),
- sln, NVRA, psm->sq.child, psm->sq.reaped, strerror(errno));
+ sln, NVRA.str, psm->sq.child, psm->sq.reaped, strerror(errno));
goto exit;
} else
if (!WIFEXITED(psm->sq.status) || WEXITSTATUS(psm->sq.status)) {
if (WIFSIGNALED(psm->sq.status)) {
rpmlog(RPMLOG_ERR,
_("%s(%s) scriptlet failed, signal %d\n"),
- sln, NVRA, WTERMSIG(psm->sq.status));
+ sln, NVRA.str, WTERMSIG(psm->sq.status));
} else {
rpmlog(RPMLOG_ERR,
_("%s(%s) scriptlet failed, exit status %d\n"),
- sln, NVRA, WEXITSTATUS(psm->sq.status));
+ sln, NVRA.str, WEXITSTATUS(psm->sq.status));
}
goto exit;
}
@@ -903,7 +905,7 @@
fn = _free(fn);
}
- NVRA = _free(NVRA);
+ NVRA.ptr = _free(NVRA.ptr);
return rc;
}
@@ -1545,6 +1547,7 @@
if (psm->goal == PSM_PKGINSTALL) {
int fc = rpmfiFC(fi);
+ hRET_t apath = { .ptr = NULL };
const char * hdrid;
/* Add per-transaction data to install header. */
@@ -1604,9 +1607,11 @@
CPIO_MAP_PATH | CPIO_MAP_MODE | CPIO_MAP_UID | CPIO_MAP_GID | (fi->mapflags & CPIO_SBIT_CHECK);
if (headerIsEntry(fi->h, RPMTAG_ORIGBASENAMES))
- xx = headerGetExtension(fi->h, RPMTAG_ORIGPATHS, NULL, &fi->apath, NULL);
+ xx = headerGetExtension(fi->h, RPMTAG_ORIGPATHS, NULL, &apath, NULL);
else
- xx = headerGetExtension(fi->h, RPMTAG_FILEPATHS, NULL, &fi->apath, NULL);
+ xx = headerGetExtension(fi->h, RPMTAG_FILEPATHS, NULL, &apath, NULL);
+assert(apath.argv != NULL);
+ fi->apath = apath.argv;
if (fi->fuser == NULL)
xx = hge(fi->h, RPMTAG_FILEUSERNAME, NULL,
@@ .
patch -p0 <<'@@ .'
Index: rpm/lib/rpminstall.c
============================================================================
$ cvs diff -u -r1.170 -r1.171 rpminstall.c
--- rpm/lib/rpminstall.c 12 Oct 2007 17:09:40 -0000 1.170
+++ rpm/lib/rpminstall.c 12 Oct 2007 18:55:57 -0000 1.171
@@ -426,11 +426,11 @@
relocations->oldPath = xstrdup(paths[0]);
paths = headerFreeData(paths, pft);
} else {
- const char * NVRA = NULL;
+ hRET_t NVRA = { .ptr = NULL };
xx = headerGetExtension(h, RPMTAG_NVRA, NULL, &NVRA, NULL);
rpmlog(RPMLOG_ERR,
- _("package %s is not relocatable\n"), NVRA);
- NVRA = _free(NVRA);
+ _("package %s is not relocatable\n"), NVRA.str);
+ NVRA.ptr = _free(NVRA.ptr);
numFailed++;
goto exit;
/*@notreached@*/
@@ .
patch -p0 <<'@@ .'
Index: rpm/lib/rpmte.c
============================================================================
$ cvs diff -u -r2.52 -r2.53 rpmte.c
--- rpm/lib/rpmte.c 30 Sep 2007 20:38:26 -0000 2.52
+++ rpm/lib/rpmte.c 12 Oct 2007 18:55:57 -0000 2.53
@@ -102,11 +102,12 @@
const unsigned char * pkgid;
char * t;
size_t nb;
+ hRET_t NVRA = { .ptr = NULL };
int xx;
- p->NEVR = NULL;
- xx = headerGetExtension(h, RPMTAG_NVRA, NULL, &p->NEVR, NULL);
-assert(p->NEVR != NULL);
+ xx = headerGetExtension(h, RPMTAG_NVRA, NULL, &NVRA, NULL);
+assert(NVRA.str != NULL);
+ p->NEVR = NVRA.str;
p->name = xstrdup(p->NEVR);
if ((p->release = strrchr(p->name, '-')) != NULL)
*p->release++ = '\0';
@@ -626,12 +627,14 @@
const char * blinkHdrid = NULL;
const unsigned char * pkgid;
int_32 pkgidcnt;
+ hRET_t NVRA = { .ptr = NULL };
int xx;
if (msg == NULL)
msg = "";
- xx = headerGetExtension(oh, RPMTAG_NVRA, NULL, &blinkNEVRA, NULL);
-assert(blinkNEVRA != NULL);
+ xx = headerGetExtension(oh, RPMTAG_NVRA, NULL, &NVRA, NULL);
+assert(NVRA.str != NULL);
+ blinkNEVRA = NVRA.str;
/*
* Convert binary pkgid to a string.
@@ .
patch -p0 <<'@@ .'
Index: rpm/lib/transaction.c
============================================================================
$ cvs diff -u -r1.337 -r1.338 transaction.c
--- rpm/lib/transaction.c 11 Oct 2007 19:44:22 -0000 1.337
+++ rpm/lib/transaction.c 12 Oct 2007 18:55:57 -0000 1.338
@@ -105,7 +105,7 @@
uint_32 otecolor, tecolor;
uint_32 oFColor, FColor;
uint_32 oFFlags, FFlags;
- const char * altNEVRA = NULL;
+ hRET_t altNVRA = { .ptr = NULL };
rpmfi otherFi = NULL;
rpmps ps;
int xx;
@@ -118,8 +118,8 @@
mi = rpmtsInitIterator(ts, RPMDBI_PACKAGES,
&shared->otherPkg, sizeof(shared->otherPkg));
while ((h = rpmdbNextIterator(mi)) != NULL) {
- xx = headerGetExtension(h, RPMTAG_NVRA, NULL, &altNEVRA, NULL);
-assert(altNEVRA != NULL);
+ xx = headerGetExtension(h, RPMTAG_NVRA, NULL, &altNVRA, NULL);
+assert(altNVRA.str != NULL);
otherFi = rpmfiNew(ts, h, RPMTAG_BASENAMES, scareMem);
break;
}
@@ -200,7 +200,7 @@
rpmpsAppend(ps, RPMPROB_FILE_CONFLICT,
rpmteNEVRA(p), rpmteKey(p),
rpmfiDN(fi), rpmfiBN(fi),
- altNEVRA,
+ altNVRA.str,
0);
}
@@ -224,7 +224,7 @@
}
ps = rpmpsFree(ps);
- altNEVRA = _free(altNEVRA);
+ altNVRA.ptr = _free(altNVRA.ptr);
otherFi = rpmfiFree(otherFi);
p->replaced = xrealloc(p->replaced,
@@ -628,15 +628,15 @@
if (rc == 0) {
rpmps ps = rpmtsProblems(ts);
- const char * altNVRA = NULL;
+ hRET_t altNVRA = { .ptr = NULL };
rc = headerGetExtension(h, RPMTAG_NVRA, NULL, &altNVRA, NULL);
-assert(altNVRA != NULL);
+assert(altNVRA.str != NULL);
rpmpsAppend(ps, RPMPROB_OLDPACKAGE,
rpmteNEVR(p), rpmteKey(p),
NULL, NULL,
- altNVRA,
+ altNVRA.str,
0);
- altNVRA = _free(altNVRA);
+ altNVRA.ptr = _free(altNVRA.ptr);
ps = rpmpsFree(ps);
rc = 1;
} else
@@ .
patch -p0 <<'@@ .'
Index: rpm/python/header-py.c
============================================================================
$ cvs diff -u -r1.56 -r1.57 header-py.c
--- rpm/python/header-py.c 8 Sep 2007 23:44:00 -0000 1.56
+++ rpm/python/header-py.c 12 Oct 2007 18:55:58 -0000 1.57
@@ -173,18 +173,18 @@
{
HAE_t hae = (HAE_t)headerAddEntry;
HRE_t hre = (HRE_t)headerRemoveEntry;
- const char ** fileNames = NULL;
+ hRET_t fileNames = { .ptr = NULL };
int count = 0;
int xx;
/*@-branchstate@*/
if (!headerIsEntry(h, RPMTAG_OLDFILENAMES)) {
headerGetExtension(h, RPMTAG_FILEPATHS, NULL, &fileNames, &count);
- if (fileNames == NULL || count <= 0)
+ if (fileNames.ptr == NULL || count <= 0)
return;
xx = hae(h, RPMTAG_OLDFILENAMES, RPM_STRING_ARRAY_TYPE,
- fileNames, count);
- fileNames = _free(fileNames);
+ fileNames.ptr, count);
+ fileNames.ptr = _free(fileNames.ptr);
}
/*@=branchstate@*/
@@ -296,7 +296,7 @@
static void mungeFilelist(Header h)
/*@*/
{
- const char ** fileNames = NULL;
+ hRET_t fileNames = { .ptr = NULL };
int count = 0;
if (!headerIsEntry (h, RPMTAG_BASENAMES)
@@ -306,14 +306,14 @@
headerGetExtension(h, RPMTAG_FILEPATHS, NULL, &fileNames, &count);
- if (fileNames == NULL || count <= 0)
+ if (fileNames.ptr == NULL || count <= 0)
return;
/* XXX Legacy tag needs to go away. */
headerAddEntry(h, RPMTAG_OLDFILENAMES, RPM_STRING_ARRAY_TYPE,
- fileNames, count);
+ fileNames.ptr, count);
- fileNames = _free(fileNames);
+ fileNames.ptr = _free(fileNames.ptr);
}
/**
@@ -665,11 +665,12 @@
{
switch (tag) {
case RPMTAG_OLDFILENAMES:
- { const char ** fl = NULL;
+ { hRET_t fl = { .ptr = NULL };
int count;
- headerGetExtension(h, RPMTAG_FILEPATHS, NULL, &fl, &count);
+ int xx;
+ xx = headerGetExtension(h, RPMTAG_FILEPATHS, NULL, &fl, &count);
if (count > 0) {
- *p = fl;
+ *p = fl.ptr;
if (c) *c = count;
if (type) *type = RPM_STRING_ARRAY_TYPE;
return 1;
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmdb/header.c
============================================================================
$ cvs diff -u -r1.73 -r1.74 header.c
--- rpm/rpmdb/header.c 11 Oct 2007 23:50:05 -0000 1.73
+++ rpm/rpmdb/header.c 12 Oct 2007 18:55:58 -0000 1.74
@@ -1821,7 +1821,7 @@
headerSprintfExtension exts = (headerSprintfExtension)headerCompoundFormats;
headerSprintfExtension ext;
int_32 he_t = 0;
- hRET_t he_p;
+ hRET_t he_p = { .ptr = NULL };
int_32 he_c = 0;
HE_t he = alloca(sizeof(*he));
size_t nb = 0;
@@ .
patch -p0 <<'@@ .'
Index: rpm/rpmdb/rpmdb.c
============================================================================
$ cvs diff -u -r1.174 -r1.175 rpmdb.c
--- rpm/rpmdb/rpmdb.c 11 Oct 2007 23:50:05 -0000 1.174
+++ rpm/rpmdb/rpmdb.c 12 Oct 2007 18:55:58 -0000 1.175
@@ -2139,7 +2139,7 @@
#endif
HE_t he;
int_32 he_t;
- hRET_t he_p;
+ hRET_t he_p = { .ptr = NULL };
int_32 he_c;
char numbuf[32];
miRE mire;
@@ -2806,7 +2806,7 @@
}
#endif
- { hRET_t NVRA;
+ { hRET_t NVRA = { .ptr = NULL };
(void) headerGetExtension(h, RPMTAG_NVRA, NULL, &NVRA, NULL);
rpmlog(RPMLOG_DEBUG, " --- h#%8u %s\n", hdrNum, NVRA.str);
NVRA.str = _free(NVRA.str);
@@ -2819,7 +2819,7 @@
int dbix;
HE_t he = memset(alloca(sizeof(*he)), 0, sizeof(*he));
int_32 he_t;
- hRET_t he_p;
+ hRET_t he_p = { .ptr = NULL };
int_32 he_c;
memset(&he_p, 0, sizeof(he_p));
@@ -3217,7 +3217,7 @@
{ dbiIndexItem rec = dbiIndexNewItem(hdrNum, 0);
HE_t he = memset(alloca(sizeof(*he)), 0, sizeof(*he));
int_32 he_t;
- hRET_t he_p;
+ hRET_t he_p = { .ptr = NULL };
int_32 he_c;
memset(&he_p, 0, sizeof(he_p));
@@ .
Received on Fri Oct 12 20:55:59 2007