При переключниях между калькулятором и основным окном. Перемещение колькулятора. Вызывает падение
text.c:721: TEXT_NextLineW: Assertion `pellip->under == 0 && pellip->after == 0' failed.
*** Bug 160 has been marked as a duplicate of this bug. ***
Подтверждаю для в 1.0.4
Created attachment 72 [details] лог ошибки Способ воспроизведения: при активном калькуляторе выбрать любое действие в меню или на панели задач.
Created attachment 73 [details] правильный лог ошибки
В 1.0.5 не падает. Нужно понаблюдать какое-то время.
Падения продолжаются, но немного изменились способы их проявления: 1. В окне калькулятора нужно нажать на любую кнопку с выпадающим меню (у клавиш вроде M+ или кнопка слева от поля числа) или на кнопку "меню" (справа от поля числа). 2. При открытом калькуляторе свернуть окно 1С.
Created attachment 84 [details] text.c.patch Падения обусловлены шириной прямоугольника (LRECT), передаваемого функции DrawTextExW, равной -1. Такой размер передаётся в случае, когда поле шире, чем строка (т.е. строка не нуждается в сокращении). Необходимо выяснить, почему. Временное решение - патч, добавляющий обработку "-1" и предотвращающий падения.
В 1.0.5 (20061224-eter2) приложен временный патч.
Вряд ли будет правиться в ближайшее время. Тем более в оригинальном wine есть такой же хак, касающийся высоты окна.
С таким же assert `pellip->under == 0 && pellip->after == 0' падает в http://rt.etersoft.ru/Ticket/Display.html?id=1527 При открытых модульных окнах программа 1с 8.0 сама закрывается если сменить виртуальный рабочий стол (примерно через 5 сек.).
Отложил свой прежний патч, вместо него - новый asset_pellip.patch, который просто отключает assert() в этом месте. Не падает. Кроме того, изменились свойства окна калькулятора. Теперь у него снова есть крестик для закрывания! Ну и выглядеть стало по-другому...