mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-22 11:22:23 +00:00
util: alloc: Note that VIR_AUTOPTR/VIR_AUTOCLEAN must not be used with vectors
We'd free only the first element of the vector leaking the rest. Signed-off-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Erik Skultety <eskultet@redhat.com>
This commit is contained in:
parent
cf3c525a45
commit
9ca7ca3d9f
@ -650,6 +650,9 @@ void virAllocTestHook(void (*func)(int, void*), void *data);
|
||||
* the variable declared with it by calling the function
|
||||
* defined by VIR_DEFINE_AUTOPTR_FUNC when the variable
|
||||
* goes out of scope.
|
||||
*
|
||||
* Note that this macro must NOT be used with vectors! The freeing function
|
||||
* will not free any elements beyond the first.
|
||||
*/
|
||||
# define VIR_AUTOPTR(type) \
|
||||
__attribute__((cleanup(VIR_AUTOPTR_FUNC_NAME(type)))) type *
|
||||
@ -662,6 +665,9 @@ void virAllocTestHook(void (*func)(int, void*), void *data);
|
||||
* when the variable goes out of scope.
|
||||
* The cleanup function is registered by VIR_DEFINE_AUTOCLEAN_FUNC macro for
|
||||
* the given type.
|
||||
*
|
||||
* Note that this macro must NOT be used with vectors! The cleaning function
|
||||
* will not clean any elements beyond the first.
|
||||
*/
|
||||
# define VIR_AUTOCLEAN(type) \
|
||||
__attribute__((cleanup(VIR_AUTOCLEAN_FUNC_NAME(type)))) type
|
||||
|
Loading…
x
Reference in New Issue
Block a user