Make translations thread safe
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
This commit is contained in:
parent
eb8dd3ad35
commit
6b236f6240
@ -21,6 +21,7 @@ package translations
|
||||
import (
|
||||
"context"
|
||||
"embed"
|
||||
"sync"
|
||||
|
||||
"go.elara.ws/logger"
|
||||
"go.elara.ws/lure/pkg/loggerctx"
|
||||
@ -31,9 +32,14 @@ import (
|
||||
//go:embed files
|
||||
var translationFS embed.FS
|
||||
|
||||
var translator *translate.Translator
|
||||
var (
|
||||
mu sync.Mutex
|
||||
translator *translate.Translator
|
||||
)
|
||||
|
||||
func Translator(ctx context.Context) *translate.Translator {
|
||||
mu.Lock()
|
||||
defer mu.Unlock()
|
||||
log := loggerctx.From(ctx)
|
||||
if translator == nil {
|
||||
t, err := translate.NewFromFS(translationFS)
|
||||
|
Loading…
Reference in New Issue
Block a user