Bug 2809

Summary: Пропадает значок iChat в трее
Product: WINE@Etersoft Reporter: Alexeev Alexey <alexeev>
Component: Окна / фокус / перерисовкаAssignee: Денис Баранов <baraka>
Status: CLOSED FIXED QA Contact:
Severity: minor    
Priority: P4 CC: boris, kondratyuk, lav, pav, shpigor, vostok
Version: 1.0.9   
Target Milestone: ---   
Hardware: PC   
OS: All   
Whiteboard:
Заявки RT: 8043, 8829 Связано с:
Дата напоминания:
Bug Depends on:    
Bug Blocks: 3100, 3589, 6366    
Attachments: Тестовое приложение

Description Alexeev Alexey 2008-11-02 17:23:53 MSK
При запуске iChat (чат для локальной сети), иконка в трее появляется, но затем исчезает. Остаётся пустое место, при нажатии на которое выскакивает меню iСhat.
Comment 1 Константин Кондратюк 2009-01-29 18:21:03 MSK
На данный момент невозможно воспроизвести проблему пропадания значка, так как последняя стабильная версия программы (1.5) падает в wine при загрузке программы (статус загрузки 40%)

wine: Unhandled exception 0x0eedfade at address 0x0000:0x7b8466b0 (thread 0009), starting debugger...
First chance exception: 0xc0000025 in 32-bit code (0x7bc3d761).
Comment 2 Анатолий Лютин 2009-03-17 18:05:31 MSK
На текущем свободном вайне падает в:
[vostok@localhost iChat_1.5]$ wine setup.exe
fixme:advapi:CheckTokenMembership ((nil) 0x12c6b0 0x33fdf0) stub!
fixme:sfc:SfcIsFileProtected ((nil), L"C:\\Program Files\\NTSCorp\\iChat\\iChat.exe") stub
fixme:menubuilder:SaveIconResAsXPM Unsupported color depth 32-bit
fixme:shell:DllCanUnloadNow stub
fixme:menubuilder:SaveIconResAsXPM Unsupported color depth 32-bit
fixme:shell:DllCanUnloadNow stub
[vostok@localhost iChat]$ wine iChat.exe
fixme:richedit:ME_HandleMessage WM_STYLECHANGING: stub
fixme:richedit:ME_HandleMessage WM_STYLECHANGED: stub
fixme:richedit:ME_HandleMessage EM_SETLANGOPTIONS: stub
fixme:richedit:IRichEditOle_fnSetHostNames stub 0x943320 NTS iChat NTS iChat
fixme:richedit:ME_HandleMessage WM_STYLECHANGING: stub
fixme:richedit:ME_HandleMessage WM_STYLECHANGED: stub
fixme:richedit:IRichEditOle_fnGetObjectCount stub 0x943320
wine: Unhandled exception 0x0eedfade at address 0x0000:0x7ee24490 (thread 0009), starting debugger...
First chance exception: 0xc0000025 in 32-bit code (0x7ef92c0a).
Register dump:
 CS:0073 SS:007b DS:007b ES:007b FS:0033 GS:003b
 EIP:7ef92c0a ESP:0032f7c4 EBP:0032f828 EFLAGS:00000212(   - 00      - -IA1)
 EAX:0032f7d0 EBX:7efe44c4 ECX:00110054 EDX:0032fbb0
 ESI:0032fbb0 EDI:0032f834
Stack dump:
0x0032f7c4:  0032f834 0032f828 7ef92be6 c0000025
0x0032f7d4:  00000001 0032fbb0 7efbcdfd 00000000
0x0032f7e4:  0032f7fc 00000000 7efffdc0 0032f880
0x0032f7f4:  0032f884 0032f7fc 00000000 00000000
0x0032f804:  00000000 00000000 7ee8880c 00000002
0x0032f814:  7ffd80cc 00000578 7ef92bcf 7ee8880c
Backtrace:
=>0 0x7ef92c0a __regs_RtlRaiseException+0x4a(rec=0x32fbb0, context=0x32f83c) [/home/vostok/wine/dlls/ntdll/exception.c:420] in ntdll (0x0032f828)
  1 0x7efd1f9a __wine_call_from_32_regs+0xbe() in ntdll (0x0032fb88)
  2 0x7ef921ec RtlUnwind() in ntdll (0x0032fc04)
Comment 3 Илья Шпигорь 2009-04-15 13:43:47 MSD
*** Bug 3358 has been marked as a duplicate of this bug. ***
Comment 4 Илья Шпигорь 2009-04-15 14:27:30 MSD
Created attachment 1152 [details]
Тестовое приложение

Хорошее тестовое приложение, которое создает в трее анимированную иконку.
Comment 5 Илья Шпигорь 2009-04-15 14:37:29 MSD
Выложил патч.

Проблема заключается в том, что при обработки сообщения NIM_MODIFY, посланного через Shell_NotifyIcon wine'у происходит вызов X-овой функции XClearArea - которая просто закрашивает все одним цветом и вызывает Expose. В eterhack этот Expose не проходит из-за хаков запрещающих отрисовку некоторых popup окон (ускоряют меню в 1с7).

В данном случае более корректным решением будет откатиться до использования RedrawWindow вместо XClearArea (это было изменено в оригинально wine), т.к. в обоих случаях результат будет один - вызов redraw и перерисовка иконки, но если это делать через X, будет генерироваться событие Expose. Также из-за стирания XClearArea видно мигание при смене иконок, чего не наблюдается в windows. При использовании RedrawWindow этого мигания нет.
Comment 6 Boris Savelev 2009-06-29 15:35:27 MSD
спустя некоторое время пропадает иконка (не анимированная) inter-pro client. прав. клик по пустому месту показывает меню приложения. такая же история, по слухам, и с utorent.
в wine-vanilla такого нет.
Comment 7 Константин Кондратюк 2009-06-29 15:37:00 MSD
Слухи про utorrent - это от меня :)
Comment 8 Илья Шпигорь 2009-06-30 11:17:43 MSD
> спустя некоторое время пропадает иконка
> (не анимированная) inter-pro client.

Что-то не хочет воспроизводится - пол часа прошло, а иконка есть. А на какой версии wine проявляется - 1.0.10 25/18?

Не было каких-либо действий после чего иконка пропала? Кто-то что-то, может, нажал?
Comment 9 Boris Savelev 2009-06-30 11:33:20 MSD
wine из сизифа. видимо 1.1.22-alt2

на wine-etersoft не проверял. но видимо проверял Костя, раз у него воспроизводится.

через сколько по времени пропадает не засекал. но в течении дня точно пропадёт.
к тому же, мне кажется, это не связано с временем работы. пропадает из-за каких-то внешних факторов... у меня было что и через 10 мин пропало.
Comment 10 Boris Savelev 2009-06-30 11:34:10 MSD
возможно, стоит озадачить тестеров воспроизвести?
Comment 11 Илья Шпигорь 2009-06-30 11:40:43 MSD
to baraka@
Надо бы воспроизвести. 
Inter-pro client есть бутылке bank/interpro
Comment 12 Константин Кондратюк 2009-06-30 15:25:24 MSD
Проблема со значком utorrent была из-за старых пакетов. В сборке 25/18 всё работает, в 18/12 значок исчезал сразу же.
Comment 13 Денис Баранов 2009-07-02 22:34:35 MSD
(In reply to comment #11)
> to baraka@
> Надо бы воспроизвести. 
> Inter-pro client есть бутылке bank/interpro
> 

Не воспроизвелась. wine eter25/eter18
Comment 14 Boris Savelev 2009-07-02 22:53:58 MSD
если кто не понял речь не про коммерческий вайн-)
Comment 15 Денис Баранов 2009-07-06 11:34:29 MSD
(In reply to comment #14)
> если кто не понял речь не про коммерческий
> вайн-)
> 
Проверил в wwo значек тоже прекрасно показывается.
Comment 16 Boris Savelev 2009-07-06 11:50:40 MSD
(In reply to comment #6)
> спустя некоторое время пропадает иконка
> (не анимированная) inter-pro client. прав. клик по
> пустому месту показывает меню приложения.
> такая же история, по слухам, и с utorent.
> в wine-vanilla такого нет.
> 

(In reply to comment #15)
> (In reply to comment #14)
> > если кто не понял речь не про коммерческий
> > вайн-)
> > 
> Проверил в wwo значек тоже прекрасно
> показывается.
> 

если wwo это wine-vanilla, то и у меня все работает
еще раз. не работает _только_ на свободном wine с патчами etersoft.
Comment 17 Boris Savelev 2009-07-06 11:52:43 MSD
кстати, kde3, если это важно