mirror of
https://github.com/matrix-org/dendrite.git
synced 2026-01-16 18:43:10 -06:00
Another try to fix a race condition
This commit is contained in:
parent
1c66854c04
commit
66092fc08b
|
|
@ -23,6 +23,7 @@ import (
|
||||||
"net"
|
"net"
|
||||||
"net/http"
|
"net/http"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
|
"sync"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/gorilla/mux"
|
"github.com/gorilla/mux"
|
||||||
|
|
@ -79,6 +80,7 @@ type P2PMonolith struct {
|
||||||
listener net.Listener
|
listener net.Listener
|
||||||
httpListenAddr string
|
httpListenAddr string
|
||||||
stopHandlingEvents chan bool
|
stopHandlingEvents chan bool
|
||||||
|
startUpLock sync.Mutex
|
||||||
}
|
}
|
||||||
|
|
||||||
func GenerateDefaultConfig(sk ed25519.PrivateKey, storageDir string, cacheDir string, dbPrefix string) *config.Dendrite {
|
func GenerateDefaultConfig(sk ed25519.PrivateKey, storageDir string, cacheDir string, dbPrefix string) *config.Dendrite {
|
||||||
|
|
@ -296,6 +298,8 @@ func (p *P2PMonolith) setupHttpServers(userProvider *users.PineconeUserProvider,
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *P2PMonolith) startHTTPServers() {
|
func (p *P2PMonolith) startHTTPServers() {
|
||||||
|
p.startUpLock.Lock()
|
||||||
|
defer p.startUpLock.Unlock()
|
||||||
go func() {
|
go func() {
|
||||||
// Build both ends of a HTTP multiplex.
|
// Build both ends of a HTTP multiplex.
|
||||||
p.httpServer = &http.Server{
|
p.httpServer = &http.Server{
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue