Danil Iarosh 1cecbf2c11
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Has been cancelled
fix: avoid logger dispose errors in free-play flow
- Исправлен баг `GameManager.NewGame()`: в режиме бесплатной игры (`payment.freeGame = true`) больше не выполняется проверка/списание баланса.
- Добавлен явный guard для free-play перед `Balance.CanStartGame()` и `Balance.SpendBalance(...)`, чтобы не было нежелательных списаний.
- Устранена ошибка закрытия лог-файла `Cannot access a disposed object`:
  - `FileLogger` переведен на безопасный паттерн `Dispose(bool)` с идемпотентностью;
  - добавлена защита от повторного закрытия/записи в уже закрытый поток;
  - финализатор `FileLogger` больше не выполняет managed-cleanup.
- Устранен риск повторной очистки в `CompositeLogger`:
  - добавлен флаг `_disposed`;
  - `Dispose(bool)` теперь выполняется только один раз;
  - финализатор вызывает `Dispose(false)` вместо полного `Dispose()`.
2026-02-24 14:02:38 +03:00
..
2025-12-18 16:49:35 +03:00
2026-02-04 14:32:15 +03:00
2025-10-08 10:24:56 +03:00
2025-10-08 10:24:56 +03:00
2025-10-08 10:24:56 +03:00
2025-10-08 10:24:56 +03:00
2025-10-08 10:24:56 +03:00