From: Panu Matilainen Date: Wed, 9 Apr 2008 07:37:34 +0000 (+0300) Subject: Replace bunch of wtf evr formatters with headerGetNVR() X-Git-Tag: tznext/4.11.0.1.tizen20130304~4438 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3d717d5c45ac17dcd3e0ae82f8f7d9846b1a5d97;p=tools%2Flibrpm-tizen.git Replace bunch of wtf evr formatters with headerGetNVR() --- diff --git a/lib/legacy.c b/lib/legacy.c index 4f63b83..a40f2e2 100644 --- a/lib/legacy.c +++ b/lib/legacy.c @@ -145,10 +145,8 @@ void providePackageNVR(Header h) { HGE_t hge = (HGE_t)headerGetEntryMinMemory; HFD_t hfd = headerFreeData; - const char *name, *version, *release; - int32_t * epoch; - const char *pEVR; - char *p; + const char *name; + char *pEVR; rpmsenseFlags pFlags = RPMSENSE_EQUAL; const char ** provides = NULL; const char ** providesEVR = NULL; @@ -159,17 +157,9 @@ void providePackageNVR(Header h) int bingo = 1; /* Generate provides for this package name-version-release. */ - xx = headerNVR(h, &name, &version, &release); - if (!(name && version && release)) + pEVR = headerGetEVR(h, &name); + if (!(name && pEVR)) return; - pEVR = p = alloca(21 + strlen(version) + 1 + strlen(release) + 1); - *p = '\0'; - if (hge(h, RPMTAG_EPOCH, NULL, (rpm_data_t *) &epoch, NULL)) { - sprintf(p, "%d:", *epoch); - while (*p != '\0') - p++; - } - (void) stpcpy( stpcpy( stpcpy(p, version) , "-") , release); /* * Rpm prior to 3.0.3 does not have versioned provides. @@ -219,6 +209,7 @@ exit: xx = headerAddOrAppendEntry(h, RPMTAG_PROVIDEVERSION, RPM_STRING_ARRAY_TYPE, &pEVR, 1); } + free(pEVR); } void legacyRetrofit(Header h) diff --git a/lib/rpmds.c b/lib/rpmds.c index dd5b738..d47aa5f 100644 --- a/lib/rpmds.c +++ b/lib/rpmds.c @@ -254,26 +254,15 @@ char * rpmdsNewDNEVR(const char * dspfx, const rpmds ds) rpmds rpmdsThis(Header h, rpmTag tagN, rpmsenseFlags Flags) { - HGE_t hge = (HGE_t) headerGetEntryMinMemory; rpmds ds = NULL; const char * Type; - const char * n, * v, * r; - int32_t * ep; + const char * n; char *evr; - int xx; if (dsType(tagN, &Type, NULL, NULL)) goto exit; - xx = headerNVR(h, &n, &v, &r); - ep = NULL; - xx = hge(h, RPMTAG_EPOCH, NULL, (rpm_data_t *)&ep, NULL); - - if (ep) { - rasprintf(&evr, "%d:%s-%s", *ep, v, r); - } else { - rasprintf(&evr, "%s-%s", v, r); - } + evr = headerGetEVR(h, &n); ds = xcalloc(1, sizeof(*ds)); ds->h = NULL; @@ -975,11 +964,8 @@ exit: int rpmdsNVRMatchesDep(const Header h, const rpmds req, int nopromote) { - HGE_t hge = (HGE_t)headerGetEntryMinMemory; - const char * pkgN, * v, * r; - int32_t * epoch; - const char * pkgEVR; - char * t; + const char * pkgN; + char * pkgEVR; rpmsenseFlags pkgFlags = RPMSENSE_EQUAL; rpmds pkg; int rc = 1; /* XXX assume match, names already match here */ @@ -992,24 +978,14 @@ int rpmdsNVRMatchesDep(const Header h, const rpmds req, int nopromote) return rc; /* Get package information from header */ - (void) headerNVR(h, &pkgN, &v, &r); - - t = alloca(21 + strlen(v) + 1 + strlen(r) + 1); - pkgEVR = t; - *t = '\0'; - if (hge(h, RPMTAG_EPOCH, NULL, (rpm_data_t *) &epoch, NULL)) { - sprintf(t, "%d:", *epoch); - while (*t != '\0') - t++; - } - (void) stpcpy( stpcpy( stpcpy(t, v) , "-") , r); - + pkgEVR = headerGetEVR(h, &pkgN); if ((pkg = rpmdsSingle(RPMTAG_PROVIDENAME, pkgN, pkgEVR, pkgFlags)) != NULL) { if (nopromote) (void) rpmdsSetNoPromote(pkg, nopromote); rc = rpmdsCompare(pkg, req); pkg = rpmdsFree(pkg); } + free(pkgEVR); return rc; }