Parcourir la source

Fix race in get/set HostConfig

Docker-DCO-1.1-Signed-off-by: Alexandr Morozov <lk4d4math@gmail.com> (github: LK4D4)
Alexandr Morozov il y a 11 ans
Parent
commit
fa7c8d523e
1 fichiers modifiés avec 6 ajouts et 1 suppressions
  1. 6 1
      daemon/container.go

+ 6 - 1
daemon/container.go

@@ -808,11 +808,16 @@ func (container *Container) GetPtyMaster() (*os.File, error) {
 }
 }
 
 
 func (container *Container) HostConfig() *runconfig.HostConfig {
 func (container *Container) HostConfig() *runconfig.HostConfig {
-	return container.hostConfig
+	container.Lock()
+	res := container.hostConfig
+	container.Unlock()
+	return res
 }
 }
 
 
 func (container *Container) SetHostConfig(hostConfig *runconfig.HostConfig) {
 func (container *Container) SetHostConfig(hostConfig *runconfig.HostConfig) {
+	container.Lock()
 	container.hostConfig = hostConfig
 	container.hostConfig = hostConfig
+	container.Unlock()
 }
 }
 
 
 func (container *Container) DisableLink(name string) {
 func (container *Container) DisableLink(name string) {