talloc_move - only nullify pointer if memory got "stolen"?
Uri Simchoni
uri at samba.org
Thu Mar 9 09:24:40 UTC 2017
Hi,
Just came across this - is the attached patch correct / necessary?
Thanks,
Uri.
-------------- next part --------------
From 6c46c2ce23445639de16ad447d4a2f3612998db1 Mon Sep 17 00:00:00 2001
From: Uri Simchoni <uri at samba.org>
Date: Thu, 9 Mar 2017 11:21:23 +0200
Subject: [PATCH] talloc_move: only nullify source pointer if memory moved
Signed-off-by: Uri Simchoni <uri at samba.org>
---
lib/talloc/talloc.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/lib/talloc/talloc.c b/lib/talloc/talloc.c
index 7721fa4..fa28b3c 100644
--- a/lib/talloc/talloc.c
+++ b/lib/talloc/talloc.c
@@ -1994,7 +1994,9 @@ _PUBLIC_ void *_talloc_move(const void *new_ctx, const void *_pptr)
{
const void **pptr = discard_const_p(const void *,_pptr);
void *ret = talloc_steal(new_ctx, discard_const_p(void, *pptr));
- (*pptr) = NULL;
+ if (*pptr && ret) {
+ (*pptr) = NULL;
+ }
return ret;
}
--
2.9.3
More information about the samba-technical
mailing list