Fix double delete in runloop::cancel