104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
void
cfw_unref(void *ptr)
{
CFWObject *obj = ptr;
if (obj == NULL)
return NULL;
if (--obj->ref_cnt == 0)
cfw_free(obj);
}
void
cfw_free(void *ptr)
{
CFWObject *obj = ptr;
if (obj == NULL)
return NULL;
if (obj->cls->dtor != NULL)
obj->cls->dtor(obj);
free(obj);
}
|
|
|
|
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
void
cfw_unref(void *ptr)
{
CFWObject *obj = ptr;
if (obj == NULL)
return;
if (--obj->ref_cnt == 0)
cfw_free(obj);
}
void
cfw_free(void *ptr)
{
CFWObject *obj = ptr;
if (obj == NULL)
return;
if (obj->cls->dtor != NULL)
obj->cls->dtor(obj);
free(obj);
}
|