Добро пожаловать, Гость. Пожалуйста авторизуйтесь здесь.
FGHIGate на GaNJa NeTWoRK ST@Ti0N - Просмотр сообщения в эхоконференции RU.GOLDED
Введите FGHI ссылку:


Присутствуют сообщения из эхоконференции RU.GOLDED с датами от 16 Jul 13 03:28:02 до 16 Nov 24 03:28:00, всего сообщений: 3632
Ответить на сообщение К списку сообщений Предыдущее сообщение Следующее сообщение
= Сообщение: 3077 из 3632 ======================================== RU.GOLDED =
От   : Vitaliy Aksyonov                 1:104/117          27 Oct 23 22:25:54
Кому : Nil A                                               27 Oct 23 22:25:54
Тема : Re: Заезды по памяти по F1
FGHI : area://RU.GOLDED?msgid=1:104/117+653c8d91
На   : area://RU.GOLDED?msgid=2:5015/46+653c83b5
= Кодировка сообщения определена как: CP866 ==================================
Ответ: area://RU.GOLDED?msgid=2:5015/46+653c9e9b
==============================================================================
Привет, Nil!

28 Oct 23 06:38, ты писал(а) мне:

NA>>>> Как-как, заходим по F1, читаем там, а потом по ESC выходим, и
NA>>>> тут то санитайзер и срабатывает

NA>>>> ==6255==ERROR: AddressSanitizer: heap-use-after-free on address
NA>>>> 0x60800001226c at pc 0x000000b4c1d5 bp 0x7ffdfdc2f5b0 sp
NA>>>> 0x7ffdfdc2f5a8 READ of size 2 at 0x60800001226c thread T0
NA>>>>     #0 0xb4c1d4 in getxch(int)
NA>>>> /home/fido/src/golded-plus/goldlib/gcui/gkbdgetm.cpp:319
NA>>>>     #1 0xb81225 in wmenuget()
NA>>> [бла..бла..бла]
NA>>> -                setonkey(Key_Esc,esc_esc,0);
NA>>> +                setonkey(Key_Esc,NULL,0);

VA>> То есть ты просто отключил обработчики этих клавиш? Отличный
VA>> фикс!

NA> Да, никрута так фиксить, конечно, подловил.

Бывает. Четыре глаза - оно всегда лучше двух. :)

NA> Тогда вот так пофиксю, вольёшь?

NA> diff --git a/goldlib/gcui/gkbdgetm.cpp b/goldlib/gcui/gkbdgetm.cpp
NA> --- a/goldlib/gcui/gkbdgetm.cpp
NA> +++ b/goldlib/gcui/gkbdgetm.cpp
NA> @@ -310,6 +310,7 @@ gkey getxch(int __tick)
NA>                      if(gkbd->inmenu and gmou.FreeCursor())
NA>                          return 0;
NA>  #endif
NA> +                    _onkey = gkbd->onkey;
NA>                      break;
NA>                  }
NA>                  _onkey = _onkey->prev;

NA> Глобальные переменные - это зло. огда мы отрабатываем клавишу ESC, то
NA> esc_esc() вычистит себя, и doubly-linked list останется пустым, т.е.
NA> gkbd->onkey уже освобождённым оказывается.

Можешь вкратце описать, в чём проблема и как твой фикс её решает? Патч подготовлю.

Best regards,
Vitaliy Aksyonov.

... Трудись, трудись, труд из тебя человека сделает!
--- GoldED+/LNX 1.1.5-b20231021
* Origin: Aurora, Colorado (1:104/117)

К главной странице гейта
Powered by NoSFeRaTU`s FGHIGate
Открытие страницы: 0.045266 секунды