Доброе время. emule перестал работать. Сообщение об ошибке: wine: Unhandled page fault on read access to 0x0000291c at address 0x7eb6d916 (thread 0009), starting debugger... Unhandled exception: page fault on read access to 0x0000291c in 32-bit code (0x7eb6d916). Register dump: CS:0073 SS:007b DS:007b ES:007b FS:0033 GS:003b EIP:7eb6d916 ESP:0033e70c EBP:0033e734 EFLAGS:00210202( - 00 - -RI1) EAX:0000291a EBX:7ebd2ff4 ECX:00da0b08 EDX:00000010 ESI:00000410 EDI:001ca0a0 Stack dump: 0x0033e70c: 001c7f08 00110000 00000002 00000030 0x0033e71c: 0033e76c 7ef829c6 00110014 7ebd2ff4 0x0033e72c: 00000410 7ebd2ff4 0033e784 7eb7254a 0x0033e73c: 00110000 00000000 00000000 009aec10 0x0033e74c: 00d60014 7ef74961 001ca0a8 001ca0a0 0x0033e75c: 001ca048 7ef7432f 00d60014 0000291a Backtrace: =>1 0x7eb6d916 in user32 (+0x5d916) (0x0033e734) 2 0x7eb7254a in user32 (+0x6254a) (0x0033e784) 3 0x7eb72790 InsertMenuW+0x60() in user32 (0x0033e7c4) 4 0x7eb728b0 AppendMenuW+0x40() in user32 (0x0033e7e4) 5 0x0051a0eb in emule (+0x11a0eb) (0x00da0af0) 6 0x00090025 (0x00300032) 7 0x00000000 (0x00000000) 0x7eb6d916: cmpw $0x554d,0x2(%eax) Modules: Module Address Debug info Name (102 modules) PE 400000- b34000 Export emule ELF 7bf00000-7bf04000 Deferred <wine-loader> ELF 7cf90000-7cfb0000 Deferred libjpeg.so.62 ELF 7cfcb000-7cfe0000 Deferred icmp<elf> \-PE 7cfd0000-7cfe0000 \ icmp ELF 7d202000-7d249000 Deferred riched20<elf> \-PE 7d210000-7d249000 \ riched20 ELF 7d294000-7d2a6000 Deferred libresolv.so.2 ELF 7d2a6000-7d2ac000 Deferred libnss_dns.so.2 ELF 7d2b7000-7d2e5000 Deferred ws2_32<elf> \-PE 7d2c0000-7d2e5000 \ ws2_32 ELF 7d2e5000-7d321000 Deferred rsaenh<elf> \-PE 7d2f0000-7d321000 \ rsaenh ELF 7d321000-7d370000 Deferred libgcrypt.so.11 ELF 7d370000-7d3e0000 Deferred libgnutls.so.13 ELF 7d3e0000-7d410000 Deferred libcups.so.2 ELF 7d416000-7d42b000 Deferred msimg32<elf> \-PE 7d420000-7d42b000 \ msimg32 ELF 7d42b000-7d4e3000 Deferred libasound.so.2 ELF 7d4e6000-7d4f7000 Deferred libtasn1.so.3 ELF 7d4f7000-7d50d000 Deferred midimap<elf> \-PE 7d500000-7d50d000 \ midimap ELF 7d50d000-7d535000 Deferred msacm32<elf> \-PE 7d520000-7d535000 \ msacm32 ELF 7d562000-7d567000 Deferred libgpg-error.so.0 ELF 7d61c000-7d64f000 Deferred uxtheme<elf> \-PE 7d620000-7d64f000 \ uxtheme ELF 7d64f000-7d659000 Deferred libxcursor.so.1 ELF 7d659000-7d677000 Deferred imm32<elf> \-PE 7d660000-7d677000 \ imm32 ELF 7d677000-7d67b000 Deferred libxcomposite.so.1 ELF 7d67b000-7d682000 Deferred libxrandr.so.2 ELF 7d682000-7d686000 Deferred libxinerama.so.1 ELF 7d686000-7d69f000 Deferred msacm32<elf> \-PE 7d690000-7d69f000 \ msacm32 ELF 7dd81000-7dda3000 Deferred libexpat.so.1 ELF 7dda3000-7dff9000 Deferred r200_dri.so ELF 7dff9000-7e004000 Deferred libdrm.so.2 ELF 7e004000-7e00a000 Deferred libxfixes.so.3 ELF 7e00a000-7e00e000 Deferred libxdamage.so.1 ELF 7e00e000-7e07f000 Deferred libgl.so.1 ELF 7e07f000-7e085000 Deferred libxdmcp.so.6 ELF 7e085000-7e089000 Deferred libxau.so.6 ELF 7e089000-7e0a0000 Deferred libice.so.6 ELF 7e0a0000-7e190000 Deferred libx11.so.6 ELF 7e190000-7e19f000 Deferred libxext.so.6 ELF 7e19f000-7e1a8000 Deferred libsm.so.6 ELF 7e1a9000-7e1b3000 Deferred libxrender.so.1 ELF 7e1c3000-7e256000 Deferred winex11<elf> \-PE 7e1d0000-7e256000 \ winex11 ELF 7e2aa000-7e3ca000 Deferred libxml2.so.2 ELF 7e3ca000-7e3f6000 Deferred libfontconfig.so.1 ELF 7e3f6000-7e409000 Deferred libz.so.1 ELF 7e409000-7e488000 Deferred libfreetype.so.6 ELF 7e48b000-7e491000 Deferred libxxf86vm.so.1 ELF 7e4a3000-7e4d9000 Deferred winspool<elf> \-PE 7e4b0000-7e4d9000 \ winspool ELF 7e4d9000-7e4fb000 Deferred mpr<elf> \-PE 7e4e0000-7e4fb000 \ mpr ELF 7e4fb000-7e547000 Deferred wininet<elf> \-PE 7e510000-7e547000 \ wininet ELF 7e547000-7e583000 Deferred urlmon<elf> \-PE 7e550000-7e583000 \ urlmon ELF 7e583000-7e624000 Deferred oleaut32<elf> \-PE 7e5a0000-7e624000 \ oleaut32 ELF 7e624000-7e643000 Deferred iphlpapi<elf> \-PE 7e630000-7e643000 \ iphlpapi ELF 7e643000-7e69f000 Deferred rpcrt4<elf> \-PE 7e650000-7e69f000 \ rpcrt4 ELF 7e69f000-7e740000 Deferred ole32<elf> \-PE 7e6b0000-7e740000 \ ole32 ELF 7e740000-7e7a6000 Deferred crypt32<elf> \-PE 7e750000-7e7a6000 \ crypt32 ELF 7e7a6000-7e835000 Deferred winmm<elf> \-PE 7e7b0000-7e835000 \ winmm ELF 7e835000-7e8f6000 Deferred comctl32<elf> \-PE 7e840000-7e8f6000 \ comctl32 ELF 7e8f6000-7e94f000 Deferred shlwapi<elf> \-PE 7e900000-7e94f000 \ shlwapi ELF 7e94f000-7ea52000 Deferred shell32<elf> \-PE 7e960000-7ea52000 \ shell32 ELF 7ea52000-7eaeb000 Deferred gdi32<elf> \-PE 7ea60000-7eaeb000 \ gdi32 ELF 7eaeb000-7ec28000 Export user32<elf> \-PE 7eb10000-7ec28000 \ user32 ELF 7ec28000-7ec74000 Deferred advapi32<elf> \-PE 7ec30000-7ec74000 \ advapi32 ELF 7ec74000-7ec78000 Deferred koi8-r.so ELF 7edb7000-7eee0000 Deferred kernel32<elf> \-PE 7edd0000-7eee0000 \ kernel32 ELF 7eee0000-7eeea000 Deferred libnss_files.so.2 ELF 7eeea000-7ef01000 Deferred libnsl.so.1 ELF 7ef01000-7ef26000 Deferred libm.so.6 ELF 7ef41000-7f000000 Deferred ntdll<elf> \-PE 7ef50000-7f000000 \ ntdll ELF b7ca0000-b7caa000 Deferred libnss_nis.so.2 ELF b7cab000-b7caf000 Deferred libdl.so.2 ELF b7caf000-b7de0000 Deferred libc.so.6 ELF b7de0000-b7df7000 Deferred libpthread.so.0 ELF b7df8000-b7e00000 Deferred libnss_compat.so.2 ELF b7e12000-b7f27000 Deferred libwine.so.1 ELF b7f28000-b7f44000 Deferred ld-linux.so.2 Threads: process tid prio (all id:s are in hex) 0000000a 0000000c 0 0000000b 0 00000008 (D) D:\eMule\emule.exe 0000000e 0 0000000d 0 00000009 0 <== Backtrace: =>1 0x7eb6d916 in user32 (+0x5d916) (0x0033e734) 2 0x7eb7254a in user32 (+0x6254a) (0x0033e784) 3 0x7eb72790 InsertMenuW+0x60() in user32 (0x0033e7c4) 4 0x7eb728b0 AppendMenuW+0x40() in user32 (0x0033e7e4) 5 0x0051a0eb in emule (+0x11a0eb) (0x00da0af0) 6 0x00090025 (0x00300032) 7 0x00000000 (0x00000000) Если установить предыдущую версию - 1.0.7, то всё работает. wine-etersoft-public собран из исходников, выложенных у вас на сайте. Если нужна любая дополнительная информация - спрашивайте )
Вы не могли бы собрать wine с ключом configure --enable-debug Это помогло бы увидеть конкретное место падения...
Created attachment 226 [details] emule.debug.log Ок. Вот Backtrace: =>1 0x7ed55d36 MENU_GetMenu+0x16(hMenu=0x291a) [/var/tmp/portage/app-emulation/wine-etersoft-public-1.0.8.20071130/work/wine-20071130/dlls/user32/menu.c:305] in user32 (0x0033e724) 2 0x7ed5a6cd MENU_SetItemData+0x12d(item=<register EDI not in topmost frame>, flags=<register ESI not in topmost frame>, id=0x291a, str=0xda78d8) [/var/tmp/portage/app-emulation/wine-etersoft-public-1.0.8.20071130/work/wine-20071130/dlls/user32/menu.c:2081] in user32 (0x0033e774) 3 0x7ed5a900 InsertMenuW+0x60(hMenu=0x1d2938, pos=0xffffffff, flags=<register EDI not in topmost frame>, id=0x291a, str=0xda78d8) [/var/tmp/portage/app-emulation/wine-etersoft-public-1.0.8.20071130/work/wine-20071130/dlls/user32/menu.c:3810] in user32 (0x0033e7b4) 4 0x7ed5aa1d AppendMenuW+0x3d(hMenu=0x1d2938, flags=0x10, id=0x291a, data=0xda78d8) [/var/tmp/portage/app-emulation/wine-etersoft-public-1.0.8.20071130/work/wine-20071130/dlls/user32/menu.c:3862] in user32 (0x0033e7d4) 5 0x0051a0eb in emule (+0x11a0eb) (0x00da78d8) 6 0x00090025 (0x00300032) 7 0x00000000 (0x00000000) Остальной вывод в приложении.
Ошибка воспроизводится только в Win Nt, в 98 работает без ошибок.
Ошибка появилась из-за моего патча, изменяющий способ выделения хэнлов под меню.
Закоммител патч и проверил. Не падает.