The unsafe pointer it returns is irrelevant - all you need to do is have multiple tasks 'safely' call it to corrupt the heap. There are probably a bunch of other non-threadsafe library functions that we oughta think about.