Укажите отработанное время

Отработанное время:
Продуктивное время:
Bug 4268 - Компас -3D: Долго поднимается диалог вставки символов   Make a simular bug
Summary: Компас -3D: Долго поднимается диалог вставки символов
Status: CLOSED FIXED
Alias: None
Product: КОМПАС 3D
Classification: Поддержка проектов
Component: Тестирование (show other bugs)
Version: v10
Hardware: PC Linux
: P4 minor
Target Milestone: ---
Assignee: Евгений Шиц
QA Contact: Олег Шевченко
URL:
Whiteboard:
Keywords:
Depends on: 2609 7467
Blocks: 753 5513
  Show dependency treegraph
 
In work:
Reported: 2009-09-02 17:44 MSD by Виталий Булгаков
Modified: 2024-03-14 20:59 MSK (History)
4 users (show)

See Also:
Заявки RT:
Связано с:
Дата напоминания:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Виталий Булгаков 2009-09-02 17:44:49 MSD
Wine@Etersoft 1.0 CAD 1.1.0-eter5/4
1. Запустить КОМПАС
2. Создать текстовый документ
3. Вставка - Символ
Диалог Символ поднимается очень долго, у меня порядка 5 сек
Если в диалоге был выбран символьный шрифт, например, Symbol Type A, то диалог поднимается примерно 8 сек.
Comment 1 Илья Шпигорь 2009-10-06 14:01:25 MSD
В результате тестирования выяснилось, что под windows этот диалог поднимается тоже с задержкой. Правда в wine она на одну-две секунды больше.

Думаю единственное, что можно - это сделать одинаковое время создания диалога независимо от того, какой шрифт в нем выбран по умолчанию.

В общем если сформулировать задачу более корректно:
GetFontUnicodeRanges для LOGFONT'ов с SYMBOL_CHARSET работает примерно в 2 раза дольше, чем с ANSI_CHARSET. В windows это время одинаковое. Необходимо, чтобы под wine оно тоже было примерно одинаковым.
Comment 2 Илья Шпигорь 2009-12-30 16:58:01 MSK
Проблема связана с функцией GetFontUnicodeRanges. Приложение сначала передает в качестве буфера NULL, для определения необходимого размера. Затем выделяет память и передает указатель на буфер для заполнения.

Получается, что перебор всех доступных символов происходит дважды. Никаких разумных способов кэширования придумать не удалось (буфер передается в качестве указателя, память выделяется динамически, поэтому размер знает только сам Компас).

Возможно, Компас, работая под wine, вызывает эту функцию большее число раз, чем это необходимо. Но скорее всего, проблема связана именно с алгоритмом перебора всех доступных символов.

Не исключено, что это связано с библиотекой libfreetype, функциями которой пользуется wine.

Этот алгоритм перебора символов реализован в патче:

commit 174c50c096edb916e4751d71eb4649387eddc6fb
Author: Alexander Morozov <amorozov@etersoft.ru>
Date:   Fri Jul 31 19:47:46 2009 +0400

    gdi32: Fix problems with "Symbol type A" font (eterbug #2609).
Comment 3 Vitaly Lipatov 2012-01-18 03:04:48 MSK
Откладываем, bugs@ в ближайшее время делать ничего не будет.
Comment 4 Евгений Шиц 2024-03-12 15:16:56 MSK
Cклонировал ВМ AltWS10, заказал сборку wine@etersoft с sales, установил
wine-etersoft-common-9.0.9-eter0.p10.1.noarch
wine-etersoft-winetricks-20240105-eter2.p10.3.noarch
wine-etersoft-full-9.0.9-eter0.p10.1.x86_64
wine32-etersoft-grdwine-0.5.7.1-eter1.p10.2.i586
wine-etersoft-mono-8.1.0-eter0.p10.1.noarch
wine32-etersoft-9.0.9-eter0.p10.1.i586
wine-etersoft-network-9.0.2-eter0.p10.1.x86_64
wine-etersoft-programs-9.0.9-eter0.p10.1.x86_64
wine-etersoft-gecko-2.47.4-eter0.p10.1.noarch
wine-etersoft-grdwine-0.5.7.1-eter1.p10.2.x86_64
wine-etersoft-9.0.9-eter0.p10.1.x86_64

Перешел в var/ftp/pvt/Windows/CAD/Kompas/KOMPAS-3D_v22_x64/v22/x64/KOMPAS-3D_v22_x64/ и запустил $ wine_install_kompas
Компас установился корректно, ошибок при установке не было.
Добавил в ~/.winde/drive_c/Program Data/ASKON файл license.ini с содержанием [Common]
host = license.server

Открыл проводник, открыл компас, создал текстовый документ. В пункте ВСТАВКА выбрал СИМВОЛ. Окно с вставкой символов открывается практически мгновенно.

Выполнил те же самые действия на Win10pro для сравнения, окно с вставкой символов открывается с идентичной скоростью.

Вывод: Проблема не воспроизводится.
Comment 5 Евгений Шиц 2024-03-12 15:18:42 MSK
Ставлю "Решена"
Comment 6 Олег Шевченко 2024-03-14 20:59:00 MSK
Закрыта.