From 15faffc53752f27c550c305435a1d7e1ea58514f Mon Sep 17 00:00:00 2001 From: Rusty Russell Date: Wed, 18 Jul 2012 05:06:31 +0930 Subject: source3/registry/reg_backend_db.c: fix stackframe leak regdb_store_values_internal() doesn't always free its stackframe. Signed-off-by: Rusty Russell --- source3/registry/reg_backend_db.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'source3/registry') diff --git a/source3/registry/reg_backend_db.c b/source3/registry/reg_backend_db.c index 8fe1b8e61c..75ad507e2b 100644 --- a/source3/registry/reg_backend_db.c +++ b/source3/registry/reg_backend_db.c @@ -1961,7 +1961,8 @@ static NTSTATUS regdb_store_values_internal(struct db_context *db, if (regval_ctr_numvals(values) == 0) { werr = regdb_delete_values(db, key); if (!W_ERROR_IS_OK(werr)) { - return werror_to_ntstatus(werr); + status = werror_to_ntstatus(werr); + goto done; } /* @@ -1969,7 +1970,8 @@ static NTSTATUS regdb_store_values_internal(struct db_context *db, * from going to disk */ werr = regval_ctr_set_seqnum(values, dbwrap_get_seqnum(db)); - return werror_to_ntstatus(werr); + status = werror_to_ntstatus(werr); + goto done; } ZERO_STRUCT(data); -- cgit