About the author
Working on an app today, I discovered 2 things that I'd like to note down.
P := nil;... Do some other stuff here...ReallocMem(P, NewSize); // Even if P has not been allocated any memory, it's okay to call it, as ReallocMem will check to see if P is nil or not. If P is nil, then it allocates the memory. Otherwise, it'll expand the block of memory to the new size, and copy the existing data over to the newly allocated memory.