mirror of
https://github.com/caddyserver/caddy.git
synced 2025-04-23 13:14:08 +08:00
log: Only chmod if permission bits differ
Follow-up to #6314 and https://caddy.community/t/caddy-2-9-0-breaking-change/27576/11
This commit is contained in:
parent
1bd567d7ad
commit
dec0495ec4
@ -173,10 +173,18 @@ func (fw FileWriter) OpenWriter() (io.WriteCloser, error) {
|
||||
return nil, err
|
||||
}
|
||||
f_tmp.Close()
|
||||
|
||||
// ensure already existing files have the right mode,
|
||||
// since OpenFile will not set the mode in such case.
|
||||
if err = os.Chmod(fw.Filename, os.FileMode(fw.Mode)); err != nil {
|
||||
return nil, err
|
||||
// only chmod if the mode needs to be changed, however
|
||||
info, err := f_tmp.Stat()
|
||||
if err == nil {
|
||||
desiredMode := os.FileMode(fw.Mode)
|
||||
if info.Mode()&os.ModePerm != desiredMode&os.ModePerm {
|
||||
if err = os.Chmod(fw.Filename, desiredMode); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return &lumberjack.Logger{
|
||||
|
Loading…
x
Reference in New Issue
Block a user