projects
/
ruby-evas.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Create the callbacks hash on first use.
[ruby-evas.git]
/
src
/
rb_evas_object.c
diff --git
a/src/rb_evas_object.c
b/src/rb_evas_object.c
index b32f2b8ebf5c4d425b740dc8364aa88e7b012f3f..c2d39af4f9c7661dd90e69a6638e98f80620cdf6 100644
(file)
--- a/
src/rb_evas_object.c
+++ b/
src/rb_evas_object.c
@@
-1,5
+1,5
@@
/*
/*
- * $Id: rb_evas_object.c
281 2005-03-14 20:51:40
Z tilman $
+ * $Id: rb_evas_object.c
302 2005-03-22 17:41:35
Z tilman $
*
* Copyright (C) 2004 Tilman Sauerbeck (tilman at code-monkey de)
*
*
* Copyright (C) 2004 Tilman Sauerbeck (tilman at code-monkey de)
*
@@
-49,7
+49,9
@@
VALUE TO_EVAS_OBJECT (Evas_Object *o)
void c_evas_object_mark (RbEvasObject *e)
{
rb_gc_mark (e->parent);
void c_evas_object_mark (RbEvasObject *e)
{
rb_gc_mark (e->parent);
- rb_gc_mark (e->callbacks);
+
+ if (!NIL_P (e->callbacks))
+ rb_gc_mark (e->callbacks);
}
void c_evas_object_free (RbEvasObject *e, bool free_mem)
}
void c_evas_object_free (RbEvasObject *e, bool free_mem)
@@
-69,7
+71,7
@@
static VALUE c_init (VALUE self, VALUE parent)
evas_object_data_set (e->real, RUBY_EVAS_OBJECT_KEY, (void *) self);
e->parent = parent;
evas_object_data_set (e->real, RUBY_EVAS_OBJECT_KEY, (void *) self);
e->parent = parent;
- e->callbacks =
rb_hash_new ()
;
+ e->callbacks =
Qnil
;
return self;
}
return self;
}