aboutsummaryrefslogtreecommitdiff
path: root/gui
diff options
context:
space:
mode:
authorHans-Christoph Steiner <eighthave@users.sourceforge.net>2011-12-18 07:01:02 +0000
committerHans-Christoph Steiner <eighthave@users.sourceforge.net>2011-12-18 07:01:02 +0000
commitae390e268d211ce08a5d26cfb4a8de64a2e16816 (patch)
tree6575a35996c3a7a785d9163dbb4f40ac6b0aea87 /gui
parent7f1a1c501a4616fc6bed6f780e9016cad4009748 (diff)
add free method to prevent crashes after closing when the patch is running
svn path=/trunk/externals/ggee/; revision=15818
Diffstat (limited to 'gui')
-rw-r--r--gui/envgen.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/gui/envgen.c b/gui/envgen.c
index 88594da..f1826e9 100644
--- a/gui/envgen.c
+++ b/gui/envgen.c
@@ -246,6 +246,11 @@ static void bindsym(t_pd* x,t_symbol* o,t_symbol* s)
pd_bind(x,s);
}
+static void envgen_free(t_envgen* x)
+{
+ clock_free(x->x_clock);
+}
+
static void *envgen_new(t_symbol *s,int argc,t_atom* argv)
{
DEBUG(post("envgen_new"););
@@ -326,8 +331,13 @@ t_widgetbehavior envgen_widgetbehavior;
void envgen_setup(void)
{
DEBUG(post("envgen_setup"););
- envgen_class = class_new(gensym("envgen"), (t_newmethod)envgen_new, 0,
- sizeof(t_envgen), 0,A_GIMME,0);
+ envgen_class = class_new(gensym("envgen"),
+ (t_newmethod)envgen_new,
+ (t_method) envgen_free,
+ sizeof(t_envgen),
+ 0,
+ A_GIMME,
+ 0);
class_addcreator((t_newmethod)envgen_new,gensym("envgen~"),A_GIMME,0);
class_addfloat(envgen_class, envgen_float);