fix: make slug package thread safe
This commit is contained in:
@@ -1,11 +1,14 @@
|
|||||||
package slug
|
package slug
|
||||||
|
|
||||||
|
import "sync"
|
||||||
|
|
||||||
type Slug interface {
|
type Slug interface {
|
||||||
String() string
|
String() string
|
||||||
Set(slug string)
|
Set(slug string)
|
||||||
}
|
}
|
||||||
|
|
||||||
type slug struct {
|
type slug struct {
|
||||||
|
mu sync.RWMutex
|
||||||
slug string
|
slug string
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -16,9 +19,13 @@ func New() Slug {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (s *slug) String() string {
|
func (s *slug) String() string {
|
||||||
|
s.mu.RLock()
|
||||||
|
defer s.mu.RUnlock()
|
||||||
return s.slug
|
return s.slug
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *slug) Set(slug string) {
|
func (s *slug) Set(slug string) {
|
||||||
|
s.mu.Lock()
|
||||||
|
defer s.mu.Unlock()
|
||||||
s.slug = slug
|
s.slug = slug
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user