From 8c5a5fc0bee0487a6f14c3e3aae539c3b0578a16 Mon Sep 17 00:00:00 2001 From: Michael Schroeder Date: Fri, 23 Aug 2013 18:06:04 +0200 Subject: [PATCH] solv_parse_sig: clear return values at the beginning --- examples/pysolv | 10 ++++++++++ ext/repo_pubkey.c | 5 +++++ 2 files changed, 15 insertions(+) diff --git a/examples/pysolv b/examples/pysolv index a658eab..b93b136 100755 --- a/examples/pysolv +++ b/examples/pysolv @@ -757,6 +757,7 @@ for job in jobs: job.how |= solv.Job.SOLVER_CLEANDEPS #pool.set_debuglevel(2) +pool.set_debuglevel(3) solver = pool.Solver() solver.set_flag(solv.Solver.SOLVER_FLAG_SPLITPROVIDES, 1); if cmd == 'erase': @@ -798,6 +799,15 @@ while True: # no problems, show transaction trans = solver.transaction() + +for p in trans.newsolvables(): + (reason, rule) = solver.describe_decision(p) + print "package", p + print "reason", reason + print "rule", rule + if rule: + print rule.info().problemstr() + del solver if trans.isempty(): print "Nothing to do." diff --git a/ext/repo_pubkey.c b/ext/repo_pubkey.c index 459ee57..facd17a 100644 --- a/ext/repo_pubkey.c +++ b/ext/repo_pubkey.c @@ -846,6 +846,11 @@ solv_parse_sig(FILE *fp, unsigned char **sigpkgp, int *sigpkglp, char *keyidstr) struct pgpsig pgpsig; Id htype; + if (sigpkgp) + { + *sigpkgp = 0; + *sigpkglp = 0; + } if ((sig = (unsigned char *)solv_slurp(fp, &sigl)) == 0) return 0; if (!is_sig_packet(sig, sigl)) -- 2.7.4