diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2007-12-14 14:28:07 +0100 |
---|---|---|
committer | Stefan Metzmacher <metze@samba.org> | 2007-12-21 05:50:22 +0100 |
commit | df8c7da800f75ff45fb48de59d7ce3f0667d375f (patch) | |
tree | 65c17e04d7f2e83d2266b6f71ef04c8e79a94d3f /source4/param/param.i | |
parent | 43ac3d9b44b98d44db9b1550c47e8f96a410d1e9 (diff) | |
download | samba-df8c7da800f75ff45fb48de59d7ce3f0667d375f.tar.gz samba-df8c7da800f75ff45fb48de59d7ce3f0667d375f.tar.bz2 samba-df8c7da800f75ff45fb48de59d7ce3f0667d375f.zip |
r26454: Add simple SWIG macro for wrapping talloced types.
(This used to be commit 760fcc8bfa2a7cd7641465cb3bae889e9e0fbc75)
Diffstat (limited to 'source4/param/param.i')
-rw-r--r-- | source4/param/param.i | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/source4/param/param.i b/source4/param/param.i index ca1bb69184..674c1671e0 100644 --- a/source4/param/param.i +++ b/source4/param/param.i @@ -42,13 +42,11 @@ typedef struct param_section param_section; %rename(LoadParm) loadparm_context; -%nodefaultctor loadparm_context; -%nodefaultdtor loadparm_context; +%talloctype(loadparm_context); typedef struct loadparm_context { %extend { loadparm_context(TALLOC_CTX *mem_ctx) { return loadparm_init(mem_ctx); } - ~loadparm_context() { talloc_free($self); } bool load(const char *filename) { return lp_load($self, filename); } #ifdef SWIGPYTHON int __len__() { return lp_numservices($self); } @@ -73,10 +71,10 @@ typedef struct loadparm_service { %rename(ParamFile) param_context; +%talloctype(param_context); typedef struct param_context { %extend { param(TALLOC_CTX *mem_ctx) { return param_init(mem_ctx); } - ~param() { talloc_free($self); } struct param_section *get_section(const char *name); struct param_opt *get(const char *section_name, const char *name); int set_string(const char *section, const char *param, const char *value); @@ -93,6 +91,7 @@ typedef struct param_context { } } param; +%talloctype(param); typedef struct param_section { %extend { struct param_opt *get(const char *name); |