If source and destination are the same object, don't lock the object