This is not perfect, it will just limit the propagation of the problem
for some time. Yes, it does hide it under the carpet, but that's better
than having a crash. Problem seems to be in Eina_Hash, but is really
difficult to reproduce and fix for the moment.
data = EINA_COW_DATA_GET(gc->ref);
+ /*
+ THIS IS A TEMPORARY WORK AROUND THAT SHOULD LIMIT PROBLEM
+ UNTIL WE KNOW WHY THERE IS A PROBLEM IN EINA_HASH.
+ */
+ if (gc->ref->refcount == 0)
+ {
+ eina_hash_del(cow->togc, &gc->ref, gc);
+ return ;
+ }
+
current_cow_size = cow->struct_size;
match = eina_hash_find(cow->match, data);
if (match)