Free the buffer is realloc fails.

<Sol_HSA> if realloc fails, it returns null but doesn't free the buffer
<Sol_HSA> (anyway, those are such corner cases that will, in practise, never occur, and if they do, you're so low on memory something will break anyway)