НАЧАЛО >> Оглавление >> Общее описание >> История изменений >> Что нового в проекте I128 >> Версия 2026.2.5 >> [I128-2731] Небезопасное чтение настроек News в TestA📄 Скачать в DOCX
| Тип | Версия | Статус | Приоритет | Исполнитель |
|---|---|---|---|---|
| ⚙️ Исправление ошибок | 2026.2.5 | 🔘 Завершено |
Средний | Ilya Mikhaylenko |
Компоненты: Нет
Завершено: 24.07.2026 17:48
Проблема:
В тестовом модуле TestA настройки новостной ленты читались напрямую из $OPTIONS['News']('News'). Если общий массив настроек не был инициализирован, был равен null или секция News имела неожиданный тип, открытие административной панели или редактора записи могло приводить к предупреждениям PHP и ошибкам статического анализа.
Решение:
TestA продолжает использовать настройки News в штатном сценарии, но теперь безопасно обрабатывает неполную конфигурацию: при отсутствии корректной секции News модуль использует пустой идентификатор ленты и пустой список выбора. Это сохраняет запуск TestA и не меняет внешний контракт заполненной конфигурации.
Технические подробности:
В modules/TestA/api.php чтение $OPTIONS['News']('News') вынесено в общий helper с проверкой типа $OPTIONS и вложенной секции News. Значение defnid и список nid получаются через безопасные методы, поэтому прямые обращения к nullable/non-array options из целевых точек Phan устранены.