Bug 2836

Summary: Падение WinPost в wine 1.0.9
Product: WINE@Etersoft Reporter: Константин Кондратюк <kondratyuk>
Component: Запуск ; Отладка ; ИсключенияAssignee: Vitaly Lipatov <lav>
Status: CLOSED FIXED QA Contact:
Severity: major    
Priority: P1 CC: lav, mibori, vitperov
Version: 1.0.9   
Target Milestone: ---   
Hardware: PC   
OS: All   
Whiteboard:
Заявки RT: Связано с:
Дата напоминания:
Bug Depends on: 3382    
Bug Blocks: 3000, 2832    

Description Константин Кондратюк 2008-11-07 15:23:19 MSK
Бутылка winpost2 на euclid'е.

Запускаем командой
$ wine WinPost.exe /com0
Пароль - demo.

При загрузке возникает исключение:
=>1 0x7bc30b1c __regs_RtlRaiseException+0x4c() in ntdll (0x7faef838)
  2 0x7bc68b83 in ntdll (+0x58b83) (0x7faefb94)
  3 0x7bc300e6 RtlRaiseException+0x6() in ntdll (0x7faefc0c)
  4 0x004db850 in winpost (+0xdb850) (0x7faefc44)
  5 0x004db86f in winpost (+0xdb86f) (0x7faefc50)

По данным разработчиков - работает на версии wine не новее 1.0. Проверили на нашей 1.0.8 - действительно работает.
Comment 1 Константин Кондратюк 2008-11-07 21:19:47 MSK
После "обновления" до 1.0.8 и обратно - всё работает!
Нужно заново воспроизводить в новой бутылке. Должно работать сразу, без сомнительных обновлений.
Comment 2 Константин Кондратюк 2008-11-13 10:51:48 MSK
Главная цель - добиться запуска с версией WinXP (или просто запуском через winexp)
Comment 3 Константин Кондратюк 2008-11-13 10:54:41 MSK
Бутылка winepost_2836 на euclid'е - специально для решения этой проблемы.
Comment 4 Anton Rudnev 2008-11-13 15:57:16 MSK
Следующие испытания проводились из нового склонированного репозитория. Каждое испытание сопровождалось make clean

Изменял значение CFLAGS в файле etersoft/maintain/build_wine.sh

1.
export CFALGS="-D_FORTIFY_SOURCE=2 -g"
ошибка не проявляется

2.
export CFALGS="-D_FORTIFY_SOURCE=2"
ошибка не проявляется

3.
export CFALGS="-g"
ошибка не проявляется

4.
если вообще не ставить export CFLAGS=...
ошибка проявляется, wwxp WinePost.exe /com0 падает при старте

5.
export CFLAGS=""
wine вообще не собирается

6.
export CFLAGS=" "
ошибка не проявляется

Итог:
Ошибка проявляется только в том случае, если CFLAGS перед началом сборки не инициализирован.
Comment 5 Anton Rudnev 2008-11-13 19:17:24 MSK
анализ WINEDEBUG=loaddll показывает использование следующих модулей, подгружаемых соответствующими функциями:

load_builtin_dll:
KERNEL32.dll
C:\\windows\\system32\\wineboot.exe
C:\\windows\\system32\\advapi32.dll
C:\\windows\\system32\\winedevice.exe
C:\\windows\\system32\\ntoskrnl.exe
C:\\windows\\system32\\wineusbhub.dll
C:\\windows\\system32\\iphlpapi.dll
C:\\windows\\system32\\rpcrt4.dll
C:\\windows\\system32\\mountmgr.sys
C:\\windows\\system32\\spoolsv.exe
C:\\windows\\system32\\wineusb.exe
C:\\windows\\system32\\gdi32.dll
C:\\windows\\system32\\user32.dll
C:\\windows\\system32\\lz32.dll
C:\\windows\\system32\\version.dll
C:\\windows\\system32\\setupapi.dll
C:\\windows\\system32\\imm32.dll
C:\\windows\\system32\\winex11.drv
C:\\windows\\system32\\ole32.dll
C:\\windows\\system32\\oleaut32.dll
C:\\windows\\system32\\mpr.dll
C:\\windows\\system32\\shlwapi.dll
C:\\windows\\system32\\comctl32.dll
C:\\windows\\system32\\shell32.dll
C:\\windows\\system32\\uxtheme.dll
C:\\windows\\system32\\winealsa.drv
C:\\windows\\system32\\msacm32.dll
C:\\windows\\system32\\msacm32.drv
C:\\windows\\system32\\midimap.dll
C:\\windows\\system32\\msimg32.dll
-----------------------

load_native_dll:
C:\\Program Files\\WinPost\\WinPost.exe
C:\\windows\\system32\\RICHED20.DLL
C:\\windows\\system32\\olepro32.dll
C:\\Program Files\\WinPost\\PReport.dll
C:\\Program Files\\WinPost\\DBAUTH.DLL
C:\\Program Files\\Borland\\Common Files\\BDE\\IDAPI32.DLL
C:\\Program Files\\Borland\\Common Files\\BDE\\IDR20009.DLL
C:\\Program Files\\Borland\\Common Files\\BDE\\BANTAM.DLL
C:\\windows\\system32\\odbc32.dll
C:\\windows\\system32\\odbcint.dll
C:\\Program Files\\Borland\\Common Files\\BDE\\SQLINT32.DLL
C:\\windows\\system32\\msxml3.dll
----------------------

loaddll:MODULE_LoadModule16:
krnl386.exe
system.drv
gdi.exe
user.exe
Comment 6 Vitaly Lipatov 2008-11-27 14:02:42 MSK
Проблема возникает при использовании флага компиляции -O2. По умолчанию в wine флаги следующие: CFLAGS    = -g -O2
Comment 7 Константин Кондратюк 2009-02-05 15:09:02 MSK
В сборке 1.0.10-alt3 ошибка отсутствует