As a follow up of the bad alloc handler patch, this patch introduces nullptr checks on pointers returned from the 
malloc/realloc/calloc functions.  In addition some memory size assignments  are moved behind the allocation  
of the corresponding memory to fulfill exception safe memory management (RAII).
patch by Klaus Kretzschmar