Bug 50

Summary: 1Cv77: Перестают закрываться окна
Product: WINE@Etersoft Reporter: Vitaly Lipatov <lav>
Component: Окна / фокус / перерисовкаAssignee: Vitaly Lipatov <lav>
Status: CLOSED WORKSFORME QA Contact: Vitaly Lipatov <lav>
Severity: major    
Priority: P2 CC: baraka, ti.eugene
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Whiteboard:
Заявки RT: Связано с:
Дата напоминания:
Bug Depends on:    
Bug Blocks: 42, 91, 1010    
Attachments: Backtrace

Description Vitaly Lipatov 2006-03-17 23:56:55 MSK
Если запустить 1С на экране такого разрешения, когда не все окна влезают 
на экран (800x600), то например при печати из платёжки (предв. просмотр) 
это окно перестаёт закрываться крестиком (только через Окна, Закрыть), 
и программа легко может упасть.
Comment 1 Vitaly Lipatov 2006-04-21 15:51:55 MSD
В определенный момент в одной из печатных форм (максимизированных?) 
блокируется 
кнопка [X] окна. При этом кнопка Max-Restore остается доступной, но не 
реагирует 
на нажатия. Т.е. окно перестает максимизироваться-восстанавливаться (хотя и 
минимизируется. 
Пользователи говорят - после этого ч-з непродолжительное время 1С вешается. 
Поэтому Серъезность считаю нужным повысить до major. 
Comment 2 Vitaly Lipatov 2006-04-21 16:10:24 MSD
Скорее всего проблемы связаны  
Comment 3 Vitaly Lipatov 2006-04-26 14:51:20 MSD
Способ воспроизведения: 
Окно программы сделать примерно 700x500 точек, 
открыть Журнал Платёжных документов, в нём любую платёжку. 
Нажать Печать. Появится окно просмотра документа. Закрываем его (крестиком). 
Оно закрывается. Но документ "Платёжное поручение" уже не закрывается 
крестиком. 
После этого возможно падение, требуется срочно закрыть программу. 
Comment 4 Vitaly Lipatov 2006-05-08 20:24:07 MSD
Проблемы начинаются с одного из RemoveMenu: 
trace:menu:DrawMenuBarTemp (0x30044, 0x5a50, 0x5850ca44, 0x6360, 0x531c) 
trace:menu:do_debug_print_menuitem MENU_DrawMenuItem:  { ID=0x7210, 
Sub=0x7210, fType=bit,pop, hbitmap=0x5408 } 
trace:menu:MENU_DrawMenuItem rect=(4,24)-(20,43) 
trace:menu:do_debug_print_menuitem MENU_DrawMenuItem:  { ID=0xf120, 
fType=bit,right, hbitmap=HBMMENU_MBAR_RESTORE } 
trace:menu:MENU_DrawMenuItem rect=(703,24)-(719,43) 
trace:menu:do_debug_print_menuitem MENU_DrawMenuItem:  { ID=0xf060, 
fType=bit,right, hbitmap=HBMMENU_MBAR_CLOSE } 
trace:menu:MENU_DrawMenuItem rect=(719,24)-(735,43) 
trace:menu:GetMenuState (menu=0x6680, id=f060, flags=0000); 
trace:menu:do_debug_print_menuitem   item:  { ID=0xf060, State=default, 
Text=L"&\0417\0430\043a\0440\044b\0442\044c\tAlt-F4 
trace:menu:GetMenuState (menu=0x6310, id=f060, flags=0000); 
trace:menu:do_debug_print_menuitem   item:  { ID=0xf060, State=default, 
Text=L"&\0417\0430\043a\0440\044b\0442\044c\tAlt-F4 
trace:menu:GetMenu for 0x30044 returning 0x6360 
trace:menu:GetMenuItemCount (0x6360) returning 15 
trace:menu:do_debug_print_menuitem GetMenuItemInfo_common:  { ID=0x7210, 
Sub=0x7210, fType=bit,pop, hbitmap=0x5408 } 
trace:menu:RemoveMenu (menu=0x6360 pos=0000 flags=0400) 
warn:menu:MENU_GetMenu invalid menu handle=0x7490, ptr=0x40213b68, magic=743c 
trace:menu:RemoveMenu (menu=0x6360 pos=000d flags=0400) 
warn:menu:MENU_GetMenu invalid menu handle=0x7490, ptr=0x40213b68, magic=743c 
trace:menu:RemoveMenu (menu=0x6360 pos=000c flags=0400) 
 
Comment 5 Vitaly Lipatov 2006-06-13 22:00:44 MSD
После удаления меню оно продолжает использоваться, отсюда проблемы: 
ш тут замешался tab. 
 
trace:menu:do_debug_print_menuitem MENU_SetItemData to  :  { ID=0xff02 
(magic=0x554d), Text=L"&3 \0417\0430\043f\0438\0441\044c \043a\043d\ 
0438\0433\0438 \043f\043e\043a\0443\043f\043e\043a - 00000060" } 
trace:menu:CheckMenuItem menu=0x8c90 id=ff02 flags=0008 
fixme:menu:MENU_FindItem count=0, nPos=65282, menu->nItems=10 
fixme:menu:MENU_FindItem count=1, nPos=65282, menu->nItems=2 
fixme:menu:MENU_FindItem fallback_pos=0 
fixme:menu:MENU_FindItem i=9 
fixme:tab:TAB_WindowProc lav here 
trace:menu:DestroyMenu (0x7060) 
trace:menu:DestroyMenu (0x6da0) 
 
Comment 6 Vitaly Lipatov 2006-12-13 17:07:13 MSK
Работает благодаря исправлению баги с минимизацией окон,
но возможно какая-то проблема всё-таки осталась.
Comment 7 Константин Кондратюк 2007-02-12 18:01:10 MSK
Бага осталась.
Проявилась в CentOS 4.3 при разрешении 800х600. Падает редко, чаще повисает.
Способ повесить: Журнал - Платёжные документы. Развернуть. Выбрать любой пункт. Печать. (Крестик для закрытия окна перестаёт реагировать на нажатия). После этого вызвать системное меню (самый левый пункт меню).
Comment 8 Константин Кондратюк 2007-02-13 14:40:52 MSK
Created attachment 86 [details]
Backtrace

При описанном в предыдущем комментарии способе воспроизведения 1С не зависает, а ОЧЕНЬ медленно падает. Backtrace в аттаче.
Comment 9 Константин Кондратюк 2007-02-13 14:46:15 MSK
Похоже, падает только в случае, когда кнопки свернуть_развернуть_закрыть не помещаются в строке с меню. Тогда кнопка "закрыть" появляется ниже двух других кнопок - это уже признак... Такой набор пунктов меню появляется в режиме печати при использовании разрешения 800х600 (см. способ воспроизведения)
Comment 10 Константин Кондратюк 2007-02-13 17:23:13 MSK
В свежей сборке не падает.
Но как и везде, проблемы с пропаданием меню...
Comment 11 Vitaly Lipatov 2007-05-27 18:03:21 MSD
Думаю этой проблемы больше нет. В любом случае она связана с порчей памяти, а скорее всего с тем, что заканчивались дескрипторы.