Preserve mode bits for static files

Fixes: https://todo.sr.ht/~adnano/kiln/25
This commit is contained in:
Adnan Maolood 2021-11-25 11:43:56 -05:00
parent 7ac653c620
commit f2f6a64a1a

View file

@ -114,9 +114,15 @@ func copyAll(srcDir, dstDir string) error {
} }
defer src.Close() defer src.Close()
sinfo, err := src.Stat()
if err != nil {
return err
}
mode := sinfo.Mode()
dstPath := filepath.Join(dstDir, strings.TrimPrefix(path, srcDir)) dstPath := filepath.Join(dstDir, strings.TrimPrefix(path, srcDir))
os.MkdirAll(filepath.Dir(dstPath), 0755) os.MkdirAll(filepath.Dir(dstPath), 0755)
dst, err := os.Create(dstPath) dst, err := os.OpenFile(dstPath, os.O_CREATE|os.O_TRUNC|os.O_WRONLY, mode)
if err != nil { if err != nil {
return err return err
} }