diff options
| author | Nicolas Paul <n@nc0.fr> | 2023-05-31 23:55:49 +0200 |
|---|---|---|
| committer | Nicolas Paul <n@nc0.fr> | 2023-05-31 23:55:49 +0200 |
| commit | 553823a62a61b0155a352d5a1964f97ffdbfc6d6 (patch) | |
| tree | 5d4e6435c920c3d4aa1758d4c5d5084a9793b025 /cmd/svgu/svgu.go | |
| parent | eef84422175de47923ab40009a406cb9d70f6d1c (diff) | |
Fix race conditions
Signed-off-by: Nicolas Paul <n@nc0.fr>
Diffstat (limited to 'cmd/svgu/svgu.go')
| -rw-r--r-- | cmd/svgu/svgu.go | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/cmd/svgu/svgu.go b/cmd/svgu/svgu.go index a9d81f6..cd765e8 100644 --- a/cmd/svgu/svgu.go +++ b/cmd/svgu/svgu.go @@ -15,7 +15,7 @@ var ( cfg = flag.String("c", "DOMAINS.star", "the configuration file to use.") out = flag.String("o", "dst", "output directory") verbose = flag.Bool("v", false, "prints additional information logs") -) // todo(nc0): verbose +) func main() { log.SetFlags(0) @@ -86,14 +86,18 @@ func main() { } var wg sync.WaitGroup + var mu sync.Mutex for _, mod := range idx.Modules { wg.Add(1) go func(m *types.Module) { defer wg.Done() + defer mu.Unlock() + + mu.Lock() if err := m.GenerateFile(*out, idx.Domain); err != nil { log.Fatalf("could not generate module %q: %v", m.Path, err) } - }(&mod) + }(mod) } wg.Wait() |
