[PATCH v13 04/41] refs.c: allow passing NULL to ref_transaction_free
- From
Ronnie Sahlberg <sahlberg@google.com>
- Date
- Jun 3, 2014, 21:37 UTC
- Message-ID
- <1401831479-3388-5-git-send-email-sahlberg@google.com>
- In-Reply-To
- <1401831479-3388-1-git-send-email-sahlberg@google.com>
Allow ref_transaction_free(NULL) as a no-op. This makes ref_transaction_free easier to use and more similar to plain 'free'.
In particular, it lets us rollback unconditionally as part of cleanup code after setting 'transaction = NULL' if a transaction has been committed or rolled back already.
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Ronnie Sahlberg <sahlberg@google.com> --- refs.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/refs.c b/refs.c index a767ef6..0faed29 100644 --- a/refs.c +++ b/refs.c @@ -3312,6 +3312,9 @@ void ref_transaction_free(struct ref_transaction *transaction) { int i; + if (!transaction) + return; + for (i = 0; i < transaction->nr; i++) free(transaction->updates[i]);
-- 2.0.0.567.g64a7adf