diff options
author | Panu Matilainen <pmatilai@redhat.com> | 2008-06-02 09:48:41 +0300 |
---|---|---|
committer | Panu Matilainen <pmatilai@redhat.com> | 2008-06-02 09:48:41 +0300 |
commit | beb573c2a02c20d593577c7b358d722ed1c021c4 (patch) | |
tree | 7b5a441420ed78e639674f32d0cdec4582457bad /lib/rpmte.c | |
parent | 27855634e99f66eef2fbe4ca8837a00b46964cc2 (diff) | |
download | rpm-beb573c2a02c20d593577c7b358d722ed1c021c4.tar.gz rpm-beb573c2a02c20d593577c7b358d722ed1c021c4.tar.bz2 rpm-beb573c2a02c20d593577c7b358d722ed1c021c4.zip |
Unbreak handling of packages without epoch
- rpmtdToString() returned NULL on empty data, rpmtdFormat() returns
(unknown type) which isn't exactly appropriate value for epoch...
Diffstat (limited to 'lib/rpmte.c')
-rw-r--r-- | lib/rpmte.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/rpmte.c b/lib/rpmte.c index 221240527..491a893d7 100644 --- a/lib/rpmte.c +++ b/lib/rpmte.c @@ -90,8 +90,11 @@ static void addTE(rpmts ts, rpmte p, Header h, p->version = xstrdup(version); p->release = xstrdup(release); - headerGet(h, RPMTAG_EPOCH, &td, HEADERGET_MINMEM); - p->epoch = rpmtdFormat(&td, RPMTD_FORMAT_STRING, NULL); + if (headerGet(h, RPMTAG_EPOCH, &td, HEADERGET_MINMEM)) { + p->epoch = rpmtdFormat(&td, RPMTD_FORMAT_STRING, NULL); + } else { + p->epoch = NULL; + } p->arch = arch ? xstrdup(arch) : NULL; p->archScore = arch ? rpmMachineScore(RPM_MACHTABLE_INSTARCH, arch) : 0; |