Merger razor_transaction_run() and destroy() as finish().
1.1 --- a/main.c Mon Apr 07 00:02:01 2008 -0400
1.2 +++ b/main.c Mon Apr 07 00:06:22 2008 -0400
1.3 @@ -351,8 +351,7 @@
1.4 if (errors)
1.5 return 1;
1.6
1.7 - set = razor_transaction_run(trans);
1.8 - razor_transaction_destroy(trans);
1.9 + set = razor_transaction_finish(trans);
1.10 razor_set_write(set, updated_repo_filename);
1.11 razor_set_destroy(set);
1.12 razor_set_destroy(upstream);
1.13 @@ -376,8 +375,7 @@
1.14 if (errors)
1.15 return 1;
1.16
1.17 - set = razor_transaction_run(trans);
1.18 - razor_transaction_destroy(trans);
1.19 + set = razor_transaction_finish(trans);
1.20 razor_set_write(set, updated_repo_filename);
1.21 razor_set_destroy(set);
1.22 printf("wrote system-updated.repo\n");
1.23 @@ -546,13 +544,7 @@
1.24 if (errors)
1.25 return 1;
1.26
1.27 - /* FIXME: Use _finish() convention here? That is, a function
1.28 - * that starts the computation and returns the result while
1.29 - * destroying the transaction. Nice for transient objects
1.30 - * such as the merger and the importer. Should we do that for
1.31 - * transactions too, that is, razor_transaction_finish()? */
1.32 - next = razor_transaction_run(trans);
1.33 - razor_transaction_destroy(trans);
1.34 + next = razor_transaction_finish(trans);
1.35
1.36 /* FIXME: Need razor_set_write_to_fd() so we can open it excl
1.37 * up front here or fail if it already exists. */
2.1 --- a/razor.c Mon Apr 07 00:02:01 2008 -0400
2.2 +++ b/razor.c Mon Apr 07 00:06:22 2008 -0400
2.3 @@ -2841,11 +2841,12 @@
2.4 }
2.5
2.6 struct razor_set *
2.7 -razor_transaction_run(struct razor_transaction *trans)
2.8 +razor_transaction_finish(struct razor_transaction *trans)
2.9 {
2.10 struct array install_packages, remove_packages;
2.11 struct razor_merger *merger;
2.12 struct razor_package *pkg, *i, *iend, *r, *rend, *s, *send;
2.13 + struct razor_set *set;
2.14 struct source *source1, *source2;
2.15 char *spool, *ipool, *rpool;
2.16 uint32_t *map;
2.17 @@ -2931,7 +2932,10 @@
2.18 array_release(&install_packages);
2.19 array_release(&remove_packages);
2.20
2.21 - return razor_merger_finish(merger);
2.22 + set = razor_merger_finish(merger);
2.23 + razor_transaction_destroy(trans);
2.24 +
2.25 + return set;
2.26 }
2.27
2.28 void
3.1 --- a/razor.h Mon Apr 07 00:02:01 2008 -0400
3.2 +++ b/razor.h Mon Apr 07 00:06:22 2008 -0400
3.3 @@ -115,7 +115,7 @@
3.4 int update_count, const char **update_packages,
3.5 int remove_count, const char **remove_packages);
3.6 int razor_transaction_describe(struct razor_transaction *trans);
3.7 -struct razor_set *razor_transaction_run(struct razor_transaction *trans);
3.8 +struct razor_set *razor_transaction_finish(struct razor_transaction *trans);
3.9 void razor_transaction_destroy(struct razor_transaction *trans);
3.10
3.11 /* Temporary helper for test suite. */
4.1 --- a/test-driver.c Mon Apr 07 00:02:01 2008 -0400
4.2 +++ b/test-driver.c Mon Apr 07 00:06:22 2008 -0400
4.3 @@ -269,8 +269,7 @@
4.4
4.5 if (!errors) {
4.6 struct razor_set *new;
4.7 - new = razor_transaction_run(ctx->trans);
4.8 - razor_set_destroy(ctx->system_set);
4.9 + new = razor_transaction_finish(ctx->trans);
4.10 ctx->system_set = new;
4.11 }
4.12 }