HomePhabricator

eina_cow: rework debug profile safety checks for recursive writes

Authored by zmike on Jun 15 2018, 8:39 AM.

Description

eina_cow: rework debug profile safety checks for recursive writes

Summary:
recursive writes are not inherently bad, so long as the pointer is
consistently re-set (handled automatically by macros), and they are nearly
unavoidable in some places such as eo/evas internals

issues may arise in a specific corner case of recursive writes when a pointer
has been hashed for garbage collection, so adjust the checks to watch for this
specific case instead of crashing on every case

fix T7005

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, committers

Tags: efl

Maniphest Tasks: T7005

Differential Revision: https://phab.enlightenment.org/D6284