From a0b0f4c6510ae71f7a8a0e20c3696274e2206686 Mon Sep 17 00:00:00 2001 From: Alexander Zhirov Date: Mon, 5 Jan 2026 15:30:37 +0300 Subject: [PATCH] =?UTF-8?q?scope=20=D0=B2=D1=8B=D0=BD=D0=B5=D1=81=D0=B5?= =?UTF-8?q?=D0=BD=20=D0=B2=20=D0=BD=D0=B0=D1=87=D0=B0=D0=BB=D0=BE=20=D0=BA?= =?UTF-8?q?=D0=BE=D0=BD=D1=81=D1=82=D1=80=D1=83=D0=BA=D1=82=D0=BE=D1=80?= =?UTF-8?q?=D0=B0,=20=D1=82.=D0=BA.=20=D0=BF=D1=80=D0=B8=20=D0=BF=D0=B0?= =?UTF-8?q?=D0=B4=D0=B5=D0=BD=D0=B8=D0=B8=20=D0=BD=D0=B5=D0=BE=D0=B1=D1=85?= =?UTF-8?q?=D0=BE=D0=B4=D0=B8=D0=BC=D0=BE=20=D0=BA=D0=BE=D1=80=D1=80=D0=B5?= =?UTF-8?q?=D0=BA=D1=82=D0=BD=D0=BE=20=D0=B2=D0=BE=D1=81=D1=81=D1=82=D0=B0?= =?UTF-8?q?=D0=BD=D0=BE=D0=B2=D0=B8=D1=82=D1=8C=20=D1=80=D0=B0=D0=B1=D0=BE?= =?UTF-8?q?=D1=82=D1=83=20=D1=82=D0=B5=D1=80=D0=BC=D0=B8=D0=BD=D0=B0=D0=BB?= =?UTF-8?q?=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/ncui/core/session.d | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/source/ncui/core/session.d b/source/ncui/core/session.d index 26f16ab..93e18c4 100644 --- a/source/ncui/core/session.d +++ b/source/ncui/core/session.d @@ -175,19 +175,21 @@ private: public: this(const SessionConfig config) { + // Если на этапе инициализации сработает проблема с конфигурированием сессии + scope (failure) + { + if (cursesInitialized()) { + endwin(); + gInitialized = false; + } + } + // ncurses не должен быть инициализирован (false) ncuiExpectMsg!cursesInitialized("ncurses is already initialized", false); // Корректное чтение юникода. setlocale(LC_ALL, ""); _root = NCWin(ncuiNotNull!initscr()); - // Если на этапе инициализации сработает проблема с конфигурированием сессии - scope (failure) - { - endwin(); - gInitialized = false; - } - // Установить флаг инициализации ncurses gInitialized = true; // Применение конфигурации