diff options
| author | Mitchell <mitch@riedstra.dev> | 2021-01-12 20:53:02 -0500 |
|---|---|---|
| committer | Mitchell <mitch@riedstra.dev> | 2021-01-12 20:53:02 -0500 |
| commit | 9b04f4ca1c2fe470a562be4b075d48d1c18962da (patch) | |
| tree | 7cb3b465eec5bde3de88d826880d2cc625eff005 /cmd/web/main.go | |
| parent | fde64077cdd85f7a7b989fef320bf7fa3826a01d (diff) | |
| download | steam-export-9b04f4ca1c2fe470a562be4b075d48d1c18962da.tar.gz steam-export-9b04f4ca1c2fe470a562be4b075d48d1c18962da.tar.xz | |
Remove the rwmutex from the steam library as the template may be mutating the map causing issues. Embed the mutexes.
Diffstat (limited to 'cmd/web/main.go')
| -rw-r--r-- | cmd/web/main.go | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/cmd/web/main.go b/cmd/web/main.go index bbb7fb6..d66e366 100644 --- a/cmd/web/main.go +++ b/cmd/web/main.go @@ -16,26 +16,30 @@ import ( "riedstra.dev/mitch/steam-export/steam" ) +type steamLib struct { + steam.Library + sync.Mutex +} + var ( Version = "Development" Logger = log.New(os.Stderr, "", log.LstdFlags) Listen = ":8899" - libMu = &sync.RWMutex{} - Lib *steam.Library + Lib steamLib ) func reloadLib() { Logger.Println("Starting library reload") - libMu.Lock() - defer libMu.Unlock() + Lib.Lock() + defer Lib.Unlock() var err error l2, err := steam.NewLibrary(DefaultLib) if err != nil { Logger.Printf("Error reopening library: %s", err) return } - Lib = l2 + Lib.Library = *l2 Logger.Println("Done reloading library") } @@ -141,10 +145,12 @@ func main() { } var err error - Lib, err = steam.NewLibrary(DefaultLib) + var l *steam.Library + l, err = steam.NewLibrary(DefaultLib) if err != nil { Logger.Fatalf("While opening library path: %s", err) } + Lib.Library = *l go installer(getPath) |
