From 45cbbaf1cfa399d79081d7a55708b0019ac77dc1 Mon Sep 17 00:00:00 2001 From: Alex X Date: Fri, 19 Sep 2025 15:26:54 +0300 Subject: [PATCH] Fixed a race condition when changing the config file --- internal/app/config.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/internal/app/config.go b/internal/app/config.go index 9d4480b7..f0eb36e0 100644 --- a/internal/app/config.go +++ b/internal/app/config.go @@ -5,6 +5,7 @@ import ( "os" "path/filepath" "strings" + "sync" "github.com/AlexxIT/go2rtc/pkg/shell" "github.com/AlexxIT/go2rtc/pkg/yaml" @@ -18,11 +19,16 @@ func LoadConfig(v any) { } } +var configMu sync.Mutex + func PatchConfig(path []string, value any) error { if ConfigPath == "" { return errors.New("config file disabled") } + configMu.Lock() + defer configMu.Unlock() + // empty config is OK b, _ := os.ReadFile(ConfigPath)