mirror of
https://github.com/Mezeporta/Erupe.git
synced 2025-12-13 07:25:03 +01:00
prevent use of reserved semaphore indexes
This commit is contained in:
@@ -154,7 +154,7 @@ func NewServer(config *Config) *Server {
|
|||||||
stages: make(map[string]*Stage),
|
stages: make(map[string]*Stage),
|
||||||
userBinaryParts: make(map[userBinaryPartID][]byte),
|
userBinaryParts: make(map[userBinaryPartID][]byte),
|
||||||
semaphore: make(map[string]*Semaphore),
|
semaphore: make(map[string]*Semaphore),
|
||||||
semaphoreIndex: 5,
|
semaphoreIndex: 7,
|
||||||
discordBot: config.DiscordBot,
|
discordBot: config.DiscordBot,
|
||||||
name: config.Name,
|
name: config.Name,
|
||||||
enable: config.Enable,
|
enable: config.Enable,
|
||||||
@@ -413,6 +413,9 @@ func (s *Server) NextSemaphoreID() uint32 {
|
|||||||
for {
|
for {
|
||||||
exists := false
|
exists := false
|
||||||
s.semaphoreIndex = s.semaphoreIndex + 1
|
s.semaphoreIndex = s.semaphoreIndex + 1
|
||||||
|
if s.semaphoreIndex == 0 {
|
||||||
|
s.semaphoreIndex = 7 // Skip reserved indexes
|
||||||
|
}
|
||||||
for _, semaphore := range s.semaphore {
|
for _, semaphore := range s.semaphore {
|
||||||
if semaphore.id == s.semaphoreIndex {
|
if semaphore.id == s.semaphoreIndex {
|
||||||
exists = true
|
exists = true
|
||||||
|
|||||||
Reference in New Issue
Block a user