Do not initialize the allocator on free(nullptr). (#74366)

free(nullptr) is guaranteed by ISO and POSIX to be a no-op, we should not pay for the overhead of maybeInit() in this case.

Additionally, Bionic calls free(nullptr) before the allocator settings are finalized.
Scudo should not run allocator initialization at that time. Doing so
causes various bad things to happen, like mapping primary regions with
the wrong PROT_MTE setting.

GitOrigin-RevId: 54c30953b9374e3bcc1c79b53a231e4b53ceafed
1 file changed