Same as above. Unless there's no chance of _car == car, it's better to do an if check first. or [car retain]; [_car release]; _car = car;