diff options
author | Panu Matilainen <pmatilai@redhat.com> | 2008-06-16 10:59:23 +0300 |
---|---|---|
committer | Panu Matilainen <pmatilai@redhat.com> | 2008-06-30 15:16:32 +0300 |
commit | 8e5b817e3cc4f1a272d3ad20807212d27174a208 (patch) | |
tree | a0e7116db22841ead6fb7afc7d07a242f44abed5 /lib/package.c | |
parent | 38b401a98986b8f627a9b0b9c3ca94b403e962b0 (diff) | |
download | rpm-8e5b817e3cc4f1a272d3ad20807212d27174a208.tar.gz rpm-8e5b817e3cc4f1a272d3ad20807212d27174a208.tar.bz2 rpm-8e5b817e3cc4f1a272d3ad20807212d27174a208.zip |
headerCheck() does not recurse
- it can be re-entered by the way of rpmtsFindPubkey() but that doesn't
matter now as dig etc are local variables
Diffstat (limited to 'lib/package.c')
-rw-r--r-- | lib/package.c | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/lib/package.c b/lib/package.c index 203a02f84..53fa18366 100644 --- a/lib/package.c +++ b/lib/package.c @@ -233,9 +233,6 @@ rpmRC headerCheck(rpmts ts, const void * uh, size_t uc, char ** msg) int xx; int i; struct rpmtd_s sigtd; - static int hclvl; - - hclvl++; /* Is the blob the right size? */ if (uc > 0 && pvlen != uc) { @@ -364,7 +361,6 @@ exit: *msg = buf; else free(buf); - hclvl--; return rc; } @@ -386,7 +382,6 @@ verifyinfo_exit: *msg = buf; else free(buf); - hclvl--; return rc; } @@ -497,12 +492,8 @@ verifyinfo_exit: else free(buf); - /* XXX headerCheck can recurse, free info only at top level. */ - if (hclvl == 1) { - rpmtdFreeData(&sigtd); - pgpFreeDig(dig); - } - hclvl--; + rpmtdFreeData(&sigtd); + pgpFreeDig(dig); return rc; } |