Summary: | 1C8.0 падает при работе с калькулятором | ||
---|---|---|---|
Product: | WINE@Etersoft | Reporter: | Александр Пликус <pav> |
Component: | Окна / фокус / перерисовка | Assignee: | Константин Кондратюк <kondratyuk> |
Status: | CLOSED FIXED | QA Contact: | Vitaly Lipatov <lav> |
Severity: | normal | ||
Priority: | P2 | CC: | baraka, lav, pav, vostok |
Version: | 1.0.3 | ||
Target Milestone: | --- | ||
Hardware: | PC | ||
OS: | Linux | ||
Whiteboard: | |||
Заявки RT: | Связано с: | ||
Дата напоминания: | |||
Bug Depends on: | |||
Bug Blocks: | 437, 42 | ||
Attachments: |
лог ошибки
правильный лог ошибки text.c.patch |
Description
Александр Пликус
2006-06-12 15:13:38 MSD
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() в этом месте. Не падает. Кроме того, изменились свойства окна калькулятора. Теперь у него снова есть крестик для закрывания! Ну и выглядеть стало по-другому... |