From 6f98c9947e0f2768f0ee44fabc352f8187889952 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Kristian=20H=C3=B8gsberg?= Date: Mon, 7 Apr 2008 00:06:22 -0400 Subject: [PATCH] Merger razor_transaction_run() and destroy() as finish(). --- main.c | 14 +++----------- razor.c | 8 ++++++-- razor.h | 2 +- test-driver.c | 3 +-- 4 files changed, 11 insertions(+), 16 deletions(-) diff --git a/main.c b/main.c index d3ff3ae..6bcd996 100644 --- a/main.c +++ b/main.c @@ -351,8 +351,7 @@ command_update(int argc, const char *argv[]) if (errors) return 1; - set = razor_transaction_run(trans); - razor_transaction_destroy(trans); + set = razor_transaction_finish(trans); razor_set_write(set, updated_repo_filename); razor_set_destroy(set); razor_set_destroy(upstream); @@ -376,8 +375,7 @@ command_remove(int argc, const char *argv[]) if (errors) return 1; - set = razor_transaction_run(trans); - razor_transaction_destroy(trans); + set = razor_transaction_finish(trans); razor_set_write(set, updated_repo_filename); razor_set_destroy(set); printf("wrote system-updated.repo\n"); @@ -546,13 +544,7 @@ command_install(int argc, const char *argv[]) if (errors) return 1; - /* FIXME: Use _finish() convention here? That is, a function - * that starts the computation and returns the result while - * destroying the transaction. Nice for transient objects - * such as the merger and the importer. Should we do that for - * transactions too, that is, razor_transaction_finish()? */ - next = razor_transaction_run(trans); - razor_transaction_destroy(trans); + next = razor_transaction_finish(trans); /* FIXME: Need razor_set_write_to_fd() so we can open it excl * up front here or fail if it already exists. */ diff --git a/razor.c b/razor.c index 267abcc..5e77402 100644 --- a/razor.c +++ b/razor.c @@ -2841,11 +2841,12 @@ razor_transaction_unsatisfied_property(struct razor_transaction *trans, } struct razor_set * -razor_transaction_run(struct razor_transaction *trans) +razor_transaction_finish(struct razor_transaction *trans) { struct array install_packages, remove_packages; struct razor_merger *merger; struct razor_package *pkg, *i, *iend, *r, *rend, *s, *send; + struct razor_set *set; struct source *source1, *source2; char *spool, *ipool, *rpool; uint32_t *map; @@ -2931,7 +2932,10 @@ razor_transaction_run(struct razor_transaction *trans) array_release(&install_packages); array_release(&remove_packages); - return razor_merger_finish(merger); + set = razor_merger_finish(merger); + razor_transaction_destroy(trans); + + return set; } void diff --git a/razor.h b/razor.h index 3ff813f..cc6a869 100644 --- a/razor.h +++ b/razor.h @@ -115,7 +115,7 @@ razor_transaction_create(struct razor_set *system, struct razor_set *upstream, int update_count, const char **update_packages, int remove_count, const char **remove_packages); int razor_transaction_describe(struct razor_transaction *trans); -struct razor_set *razor_transaction_run(struct razor_transaction *trans); +struct razor_set *razor_transaction_finish(struct razor_transaction *trans); void razor_transaction_destroy(struct razor_transaction *trans); /* Temporary helper for test suite. */ diff --git a/test-driver.c b/test-driver.c index bdfe0e5..c94b48e 100644 --- a/test-driver.c +++ b/test-driver.c @@ -269,8 +269,7 @@ end_transaction(struct test_context *ctx) if (!errors) { struct razor_set *new; - new = razor_transaction_run(ctx->trans); - razor_set_destroy(ctx->system_set); + new = razor_transaction_finish(ctx->trans); ctx->system_set = new; } } -- 1.7.1