fix(shell): sync PWD creation

relates to #3646
This commit is contained in:
Jan De Dobbeleer 2023-03-30 11:11:32 +02:00 committed by Jan De Dobbeleer
parent 16c0ba55bc
commit 4e19379e19

View file

@ -394,8 +394,9 @@ func (env *Shell) Getenv(key string) string {
} }
func (env *Shell) Pwd() string { func (env *Shell) Pwd() string {
env.Lock()
defer env.Trace(time.Now()) defer env.Trace(time.Now())
defer env.Debug(env.cwd) defer env.Unlock()
if env.cwd != "" { if env.cwd != "" {
return env.cwd return env.cwd
} }
@ -409,6 +410,7 @@ func (env *Shell) Pwd() string {
} }
if env.CmdFlags != nil && env.CmdFlags.PWD != "" { if env.CmdFlags != nil && env.CmdFlags.PWD != "" {
env.cwd = correctPath(env.CmdFlags.PWD) env.cwd = correctPath(env.CmdFlags.PWD)
env.Debug(env.cwd)
return env.cwd return env.cwd
} }
dir, err := os.Getwd() dir, err := os.Getwd()
@ -417,6 +419,7 @@ func (env *Shell) Pwd() string {
return "" return ""
} }
env.cwd = correctPath(dir) env.cwd = correctPath(dir)
env.Debug(env.cwd)
return env.cwd return env.cwd
} }
@ -772,9 +775,7 @@ func (env *Shell) Logs() string {
} }
func (env *Shell) TemplateCache() *TemplateCache { func (env *Shell) TemplateCache() *TemplateCache {
env.Lock()
defer env.Trace(time.Now()) defer env.Trace(time.Now())
defer env.Unlock()
if env.tmplCache != nil { if env.tmplCache != nil {
return env.tmplCache return env.tmplCache
} }