Files
mod-playerbots/src/strategy/actions
root c90b155a70 fix: Replace static m_botReleaseTimes with per-bot storage to prevent race condition
Fixes a thread safety issue where multiple bots dying in battlegrounds
simultaneously would corrupt the shared static unordered_map, causing
segmentation faults.

Changes:
- Remove: static m_botReleaseTimes map from AutoReleaseSpiritAction
- Add: bgReleaseAttemptTime member to PlayerbotAI (per-bot storage)
- Update: All references to use per-bot storage instead of static map

Why this fixes the crash:
- Each PlayerbotAI instance is accessed by only one map update thread
- No cross-thread access to shared data structures
- No mutex/locking required - thread-safe by design
- Automatic cleanup when bot is destroyed

Thread-safe solution: Per-bot state eliminates race conditions without
performance overhead.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-06 11:22:45 +11:00
..
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2024-08-04 10:23:36 +08:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00
2025-09-30 15:19:44 +02:00