Using assert(3) to catch cases where freed objects are inadvertently used should
be done in all but the a2id_free function itself. This way errors can be caught
in a secure way in all the other functions, instead of only in the a2id_free
function. Although no longer detectable in a2id_free, accepting and returning
NULL is idiomatic with free(3) and not a security issue because the behaviour
avoids a double free.
Triggered by reading the changelog of Tor 0.3.3.9.
Using assert(3) to catch cases where freed objects are inadvertently used should be done in all but the a2id_free function itself. This way errors can be caught in a secure way in all the other functions, instead of only in the a2id_free function. Although no longer detectable in a2id_free, accepting and returning NULL is idiomatic with free(3) and not a security issue because the behaviour avoids a double free.
Triggered by reading the changelog of Tor 0.3.3.9.