From 4711856cd43f58ff42f78a6343515331a402f44f Mon Sep 17 00:00:00 2001 From: ale <ale@incal.net> Date: Fri, 15 Nov 2013 10:13:34 +0000 Subject: [PATCH] prevent broken updates when no master is set --- node/icecast.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/node/icecast.go b/node/icecast.go index 843024fe..1102682f 100644 --- a/node/icecast.go +++ b/node/icecast.go @@ -1,6 +1,8 @@ package node import ( + "errors" + "log" "os" "os/exec" ) @@ -30,6 +32,11 @@ func (ic *IcecastController) reload() error { } func (ic *IcecastController) Update(conf *ClusterConfig, isMaster bool, masterAddr string) error { + if !isMaster && masterAddr == "" { + log.Printf("system in unknown state (no master) - update aborted") + return errors.New("unknown system state") + } + tmpf := ic.ConfigFile + ".tmp" defer os.Remove(tmpf) -- GitLab