diff options
Diffstat (limited to 'ext/dl/sym.c')
-rw-r--r-- | ext/dl/sym.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/ext/dl/sym.c b/ext/dl/sym.c index 7e269b7c9e..7531c7969f 100644 --- a/ext/dl/sym.c +++ b/ext/dl/sym.c @@ -158,6 +158,8 @@ rb_dlsym_initialize(int argc, VALUE argv[], VALUE self) if( saddr ){ Data_Get_Struct(self, struct sym_data, data); + if( data->name ) free(data->name); + if( data->type ) free(data->type); data->func = saddr; data->name = sname ? strdup(sname) : 0; data->type = stype ? strdup(stype) : 0; |