diff options
author | William S Fulton <wsf@fultondesigns.co.uk> | 2016-12-18 16:53:24 +0000 |
---|---|---|
committer | William S Fulton <wsf@fultondesigns.co.uk> | 2016-12-18 17:50:47 +0000 |
commit | bdf71b0067250090445e8634babfcb10ada5c247 (patch) | |
tree | 58f934893fdaea9570680d85f1d3c45519eeb828 /Lib | |
parent | cc56765a7ac8834380096479a1958056a7881e74 (diff) | |
download | swig-bdf71b0067250090445e8634babfcb10ada5c247.tar.gz |
Zero initialize %array_functions and %array_class
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/typemaps/swigmacros.swg | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Lib/typemaps/swigmacros.swg b/Lib/typemaps/swigmacros.swg index 778502d43..3a63a256c 100644 --- a/Lib/typemaps/swigmacros.swg +++ b/Lib/typemaps/swigmacros.swg @@ -157,14 +157,14 @@ nocppval * ----------------------------------------------------------------------------- */ #if defined(__cplusplus) -# define %new_instance(Type...) (new Type) +# define %new_instance(Type...) (new Type()) # define %new_copy(val,Type...) (new Type(%static_cast(val, const Type&))) # define %new_array(size,Type...) (new Type[size]()) # define %new_copy_array(ptr,size,Type...) %reinterpret_cast(memcpy(new Type[size], ptr, sizeof(Type)*(size)), Type*) # define %delete(cptr) delete cptr # define %delete_array(cptr) delete[] cptr #else /* C case */ -# define %new_instance(Type...) (Type *)malloc(sizeof(Type)) +# define %new_instance(Type...) (Type *)calloc(1,sizeof(Type)) # define %new_copy(val,Type...) (Type *)memcpy(%new_instance(Type),&val,sizeof(Type)) # define %new_array(size,Type...) (Type *)calloc(size, sizeof(Type)) # define %new_copy_array(ptr,size,Type...) (Type *)memcpy(malloc((size)*sizeof(Type)), ptr, sizeof(Type)*(size)) |