Merger razor_transaction_run() and destroy() as finish().
authorKristian H?gsberg <krh@redhat.com>
Mon Apr 07 00:06:22 2008 -0400 (2008-04-07)
changeset 196b38fc517ea04
parent 195 7a53d1711083
child 197 d29026900856
Merger razor_transaction_run() and destroy() as finish().
main.c
razor.c
razor.h
test-driver.c
     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  }