Prechádzať zdrojové kódy

No need for container.Lock if rename same name

During the renaming of a container, no need to call `container.Lock()`
if `oldName == newName`.

This is a follow-up from #23360 (commit 88d1ee6c112d980a63c625389524047fea32e6d9)

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Vincent Demeester 9 rokov pred
rodič
commit
7e1ec8d2bd
1 zmenil súbory, kde vykonal 3 pridanie a 3 odobranie
  1. 3 3
      daemon/rename.go

+ 3 - 3
daemon/rename.go

@@ -33,13 +33,13 @@ func (daemon *Daemon) ContainerRename(oldName, newName string) error {
 	oldName = container.Name
 	oldIsAnonymousEndpoint := container.NetworkSettings.IsAnonymousEndpoint
 
-	container.Lock()
-	defer container.Unlock()
-
 	if oldName == newName {
 		return fmt.Errorf("Renaming a container with the same name as its current name")
 	}
 
+	container.Lock()
+	defer container.Unlock()
+
 	if newName, err = daemon.reserveName(container.ID, newName); err != nil {
 		return fmt.Errorf("Error when allocating new name: %v", err)
 	}