The memory for the blocks is explicitly managed, and the destructors for the blocks wasn't being called.