소스 검색

fix: execOnCalendarFile, avoid possible crash deleting nil timers

jamesread 7 달 전
부모
커밋
b3430e3a5c
1개의 변경된 파일4개의 추가작업 그리고 1개의 파일을 삭제
  1. 4 1
      service/internal/oncalendarfile/calendar.go

+ 4 - 1
service/internal/oncalendarfile/calendar.go

@@ -132,7 +132,10 @@ func registerTimer(action *config.Action, instant time.Time, timer *time.Timer,
 
 func unregisterTimer(action *config.Action, instant time.Time) {
 	scheduleMapMutex.Lock()
-	delete(scheduleMap[action.ID].timers, instant)
+	v := scheduleMap[action.ID]
+	if v.timers != nil {
+		delete(v.timers, instant)
+	}
 	scheduleMapMutex.Unlock()
 }