It is safe to "free(NULL)" and "delete NULL"

Hi

According to C standard (7.20.3.2/2 from ISO-IEC 9899) and C++ standard ($5.3.5/2 - C++11) it is completely safe to  call "free(NULL)" and "delete NULL" because they check argument for NULL internally (for all compilers and platforms). So we can reduce code size and improve performance a bit by removing useless checks.

More details about why is it safe on Stackoverflow:
http://stackoverflow.com/questions/6084218/is-it-good-practice-to-free-a-null-pointer-in-c
http://stackoverflow.com/questions/4190703/is-it-safe-to-delete-a-null-pointer