aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRafael Garcia-Suarez <rgarciasuarez@mandriva.org>2006-03-07 10:07:26 +0000
committerRafael Garcia-Suarez <rgarciasuarez@mandriva.org>2006-03-07 10:07:26 +0000
commit1a6f58f4061934cf0a1fe40305d8d772a40e353d (patch)
tree76cc0f3906b1682c3efe78945725bcc6c1d172e7
parent86bd2a0cfdea2d3bfaf034fbd0df3ebc1c52b06d (diff)
downloadperl-URPM-1a6f58f4061934cf0a1fe40305d8d772a40e353d.tar
perl-URPM-1a6f58f4061934cf0a1fe40305d8d772a40e353d.tar.gz
perl-URPM-1a6f58f4061934cf0a1fe40305d8d772a40e353d.tar.bz2
perl-URPM-1a6f58f4061934cf0a1fe40305d8d772a40e353d.tar.xz
perl-URPM-1a6f58f4061934cf0a1fe40305d8d772a40e353d.zip
Protect rpmtsRun with a new link to the transaction object
-rw-r--r--URPM.xs2
1 files changed, 2 insertions, 0 deletions
diff --git a/URPM.xs b/URPM.xs
index 43489e3..612d053 100644
--- a/URPM.xs
+++ b/URPM.xs
@@ -2996,6 +2996,7 @@ Trans_run(trans, data, ...)
if (repa) free(repa);
}
rpmtsSetFlags(trans->ts, transFlags);
+ trans->ts = rpmtsLink(trans->ts, "URPM::Transaction::run");
rpmtsSetNotifyCallback(trans->ts, rpmRunTransactions_callback, &td);
if (rpmtsRun(trans->ts, NULL, probFilter) > 0) {
rpmps ps = rpmtsProblems(trans->ts);
@@ -3005,6 +3006,7 @@ Trans_run(trans, data, ...)
ps = rpmpsFree(ps);
}
rpmtsEmpty(trans->ts);
+ rpmtsFree(trans->ts);
MODULE = URPM PACKAGE = URPM PREFIX = Urpm_