X-Git-Url: http://git.giacomolli.uk/onechat/blobdiff_plain/97274864799ac2eea84bf80c9727a810b695db55..697c662a48c87ee9be136358129c1f79f4f5a72f:/daemon.go diff --git a/daemon.go b/daemon.go index 034cac7..58bf502 100644 --- a/daemon.go +++ b/daemon.go @@ -56,6 +56,14 @@ func daemon(ctx context.Context, out io.Writer) (err error) { return err } + // Check the socket path before the daemon writes a file, so that a data + // directory with a long path stays empty. + socket := filepath.Join(dir, socketFileName) + err = checkSocketPath(socket) + if err != nil { + return err + } + config, err := loadConfig(dir) if err != nil { return err @@ -90,7 +98,7 @@ func daemon(ctx context.Context, out io.Writer) (err error) { err = errors.Join(err, memory.Close()) }() - listener, err := listenSocket(filepath.Join(dir, socketFileName)) + listener, err := listenSocket(socket) if err != nil { return err }