From 43bb87f5fa8fb23aee816636cefeb509397e7291 Mon Sep 17 00:00:00 2001 From: Matthias Dieter Wallnöfer Date: Mon, 22 Mar 2010 13:39:40 +0100 Subject: s4:registry - "patchfile" - check if strings could be allocated --- source4/lib/registry/patchfile.c | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'source4/lib/registry/patchfile.c') diff --git a/source4/lib/registry/patchfile.c b/source4/lib/registry/patchfile.c index 9a4c9a6fb7..2932910ea0 100644 --- a/source4/lib/registry/patchfile.c +++ b/source4/lib/registry/patchfile.c @@ -95,6 +95,11 @@ WERROR reg_generate_diff_key(struct registry_key *oldkey, /* if "error2" is going to be "WERR_BADFILE", then newkey */ /* didn't have such a subkey and therefore add a del diff */ tmppath = talloc_asprintf(mem_ctx, "%s\\%s", path, keyname1); + if (tmppath == NULL) { + DEBUG(0, ("Out of memory\n")); + talloc_free(mem_ctx); + return WERR_NOMEM; + } if (!W_ERROR_IS_OK(error2)) callbacks->del_key(callback_data, tmppath); @@ -156,6 +161,11 @@ WERROR reg_generate_diff_key(struct registry_key *oldkey, /* oldkey didn't have such a subkey, add a add diff */ tmppath = talloc_asprintf(mem_ctx, "%s\\%s", path, keyname1); + if (tmppath == NULL) { + DEBUG(0, ("Out of memory\n")); + talloc_free(mem_ctx); + return WERR_NOMEM; + } callbacks->add_key(callback_data, tmppath); /* perform here also the recursive invocation */ -- cgit