parent
6d15044bd4
commit
474c668038
|
@ -146,6 +146,7 @@ _wref_del(const Eo *obj, const void *class_data EINA_UNUSED, va_list *list)
|
|||
return;
|
||||
}
|
||||
eo_event_callback_del((Eo *) obj, EO_EV_DEL, _eo_weak_ref_cb, wref);
|
||||
*wref = NULL;
|
||||
}
|
||||
|
||||
/* EOF Weak reference. */
|
||||
|
|
|
@ -69,6 +69,7 @@ START_TEST(eo_weak_reference)
|
|||
eo_init();
|
||||
|
||||
Eo *obj = eo_add(SIMPLE_CLASS, NULL);
|
||||
Eo *obj2 = eo_add(SIMPLE_CLASS, NULL);
|
||||
Eo *wref;
|
||||
eo_do(obj, eo_wref_add(&wref));
|
||||
fail_if(!wref);
|
||||
|
@ -92,8 +93,16 @@ START_TEST(eo_weak_reference)
|
|||
|
||||
eo_do(obj, eo_wref_add(&wref));
|
||||
eo_do(obj, eo_wref_del(&wref));
|
||||
fail_if(wref);
|
||||
|
||||
eo_do(obj, eo_wref_add(&wref));
|
||||
eo_do(obj2, eo_wref_del(&wref));
|
||||
fail_if(!wref);
|
||||
eo_do(obj, eo_wref_del(&wref));
|
||||
fail_if(wref);
|
||||
|
||||
eo_unref(obj);
|
||||
eo_unref(obj2);
|
||||
|
||||
|
||||
eo_shutdown();
|
||||
|
|
Loading…
Reference in New Issue