diff --git a/internal/config/config.go b/internal/config/config.go index a51242d..980e469 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -53,10 +53,7 @@ var defaults = Config{ LastEventID: 0, } -var ( - mu sync.Mutex - cached *Config -) +var mu sync.Mutex // Load reads config from disk, merging with defaults. func Load() Config { @@ -71,7 +68,7 @@ func Load() Config { if err := json.Unmarshal(data, &cfg); err != nil { log.Printf("config: parse error: %v", err) } - cached = &cfg + return cfg } @@ -88,7 +85,7 @@ func Save(cfg Config) error { if err != nil { return err } - cached = &cfg + return os.WriteFile(ConfigPath(), data, 0o644) } diff --git a/internal/config/config_test.go b/internal/config/config_test.go index 1f658b4..fb82f39 100644 --- a/internal/config/config_test.go +++ b/internal/config/config_test.go @@ -39,11 +39,6 @@ func TestSaveLoadRoundTrip(t *testing.T) { t.Fatalf("Save failed: %v", err) } - // Clear cache so Load reads from disk - mu.Lock() - cached = nil - mu.Unlock() - loaded := Load() if loaded.SyncthingAPIKey != "test-key-12345" { t.Errorf("API key not round-tripped: got %q", loaded.SyncthingAPIKey)