if (unlikely((tc->flags & (TALLOC_FLAG_FREE | ~0xF)) != TALLOC_MAGIC)) {
if (tc->flags & TALLOC_FLAG_FREE) {
talloc_abort_double_free();
+ return NULL;
} else {
talloc_abort_unknown_value();
+ return NULL;
}
}
return tc;
if (*pool_object_count == 0) {
talloc_abort("Pool object count zero!");
+ return 0;
}
*pool_object_count -= 1;
if (unlikely(talloc_parent_is_no_owner(ptr) &&
new_ctx != no_owner_context)) {
talloc_abort_no_owner_free();
+ return NULL;
}
if (unlikely(new_ctx == TALLOC_MAGIC_NO_OWNER)) {
if (unlikely(talloc_parent_is_no_owner(ptr))) {
talloc_abort_no_owner_free();
+ return -1;
}
return _talloc_free(ptr);