then the strcpy() could still lead to a NULL pointer dereference.
Also note that at another layer - such as the definition of malloc() itself - there may be
an implementation-specific CHECK-BEFORE behavior that ensures that there is enough
memory. The HANDLE-BEFORE for malloc() in this case would be to return a NULL