Prevent panic in case of hung loading sequence (fixes #315)

This is known to happen if another program spawns Caddy with a stdin pipe but does not close its write end of Caddy's stdin.
This commit is contained in:
Matthew Holt 2015-11-05 13:29:37 -07:00
parent 47c5b6c9c4
commit fc7f7dffa8

View File

@ -22,6 +22,12 @@ func init() {
var updatedCaddyfile Input
caddyfileMu.Lock()
if caddyfile == nil {
// Hmm, did spawing process forget to close stdin? Anyhow, this is unusual.
log.Println("[ERROR] SIGUSR1: no caddyfile to reload")
caddyfileMu.Unlock()
continue
}
if caddyfile.IsFile() {
body, err := ioutil.ReadFile(caddyfile.Path())
if err == nil {