From 0af086578916e0b9cedfd617ac9856e4b7cd4cb5 Mon Sep 17 00:00:00 2001 From: Fredrik Ehnbom Date: Sat, 26 Sep 2015 18:50:16 +0200 Subject: [PATCH] settings: Make Un-/MarshalJSON thread safe --- settings.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/settings.go b/settings.go index ae7442f..a156128 100644 --- a/settings.go +++ b/settings.go @@ -51,10 +51,14 @@ func (s *Settings) Parent() SettingsInterface { } func (s *Settings) UnmarshalJSON(data []byte) error { + s.lock.Lock() + defer s.lock.Unlock() return json.Unmarshal(data, &s.data) } func (s *Settings) MarshalJSON() (data []byte, err error) { + s.lock.Lock() + defer s.lock.Unlock() return json.Marshal(&s.data) }