[4/4] ws2_32: Avoid a crash with an optional pointer in WSAAsyncGetServByName.

Alexandre Julliard julliard at winehq.org
Wed Jun 1 11:09:45 CDT 2011


Andrew Nguyen <anguyen at codeweavers.com> writes:

> On 06/01/2011 07:39 AM, Marvin wrote:
>> === WXPPROSP3 (32 bit sock) ===
>> sock.c:501: Test failed: oob_server (218): unexpectedly at the OOB mark: 0
>> sock.c:511: Test failed: oob_server (218): unexpectedly at the OOB mark: 0
>
> The test failure is not related to my changes.

I'm also seeing some random crashes here. For instance:

../../../tools/runtest -q -P wine -M ws2_32.dll -T ../../.. -p ws2_32_test.exe.so sock.c && touch sock.ok
wine: Unhandled page fault on execute access to 0x00000000 at address (nil) (thread 0021), starting debugger...
Unhandled exception: page fault on execute access to 0x00000000 in 32-bit code (0x00000000).
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:00000000 ESP:0032f6a4 EBP:0032f798 EFLAGS:00010202(  R- --  I   - - - )
 EAX:00000000 EBX:7bc9ed6c ECX:0032f5d0 EDX:00000001
 ESI:00000000 EDI:00000000
Stack dump:
0x0032f6a4:  0032f800 0032f798 7bc7285c 00000002
0x0032f6b4:  0032f6d0 00000000 0032f6c0 00000000
0x0032f6c4:  00000000 00000000 0032f6d0 00000000
0x0032f6d4:  00000000 0032f801 00000001 0032f728
0x0032f6e4:  6818d724 00000040 7bc72710 00000006
0x0032f6f4:  0032f830 0032f8a8 68025b9e 0032f748
Backtrace:
=>0 0x00000000 (0x0032f798)
  1 0x7bc7cc4a RtlCreateUserThread+0x2d9(process=0xffffffff, descr=(nil), suspended=1, stack_addr=0x0(nil), stack_reserve=0, stack_commit=0, start=0x68686ac0, param=0x32fa78, handle_ptr=0x32f9ac, id=0x32f9a0) [/home/julliard/wine/wine/dlls/ntdll/thread.c:498] in ntdll (0x0032f968)
  2 0x7b87247d CreateRemoteThread+0x7c(hProcess=0xffffffff, sa=(nil), stack=0, start=0x68686ac0, param=0x32fa78, flags=0, id=0x32fa70) [/home/julliard/wine/wine/dlls/kernel32/thread.c:89] in kernel32 (0x0032f9c8)
  3 0x7b872578 CreateThread+0x47(sa=(nil), stack=0, start=0x68686ac0, param=0x32fa78, flags=0, id=0x32fa70) [/home/julliard/wine/wine/dlls/kernel32/thread.c:55] in kernel32 (0x0032f9f8)
  4 0x686923ce test_send+0x10d() [/home/julliard/wine/wine/dlls/ws2_32/tests/sock.c:2955] in ws2_32_test (0x0032fa98)
  5 0x6869b18b func_sock+0x36ca() [/home/julliard/wine/wine/dlls/ws2_32/tests/sock.c:4975] in ws2_32_test (0x0032fd38)
  6 0x6869c23e run_test+0x14d(name="sock.c") [/home/julliard/wine/wine/dlls/ws2_32/tests/../../../include/wine/test.h:556] in ws2_32_test (0x0032fd88)
  7 0x6869cd07 main+0x156(argc=0, argv=(nil)) [/home/julliard/wine/wine/dlls/ws2_32/tests/../../../include/wine/test.h:624] in ws2_32_test (0x0032fe48)
  8 0x6869cedc __wine_spec_exe_entry+0x7b(peb=0x7ffdf000) [/home/julliard/wine/wine/dlls/winecrt0/exe_entry.c:36] in ws2_32_test (0x0032fe90)
  9 0x7b85aaac call_process_entry+0xb() in kernel32 (0x0032fea8)
  10 0x7b85b6df start_process+0x5e(peb=0x7ffdf000) [/home/julliard/wine/wine/dlls/kernel32/process.c:1087] in kernel32 (0x0032fee8)
  11 0x7bc737d8 call_thread_func+0xb() in ntdll (0x0032fef8)
  12 0x7bc76f3e call_thread_entry_point+0x6d(entry=0x7b85b680, arg=0x7ffdf000) [/home/julliard/wine/wine/dlls/ntdll/signal_i386.c:2499] in ntdll (0x0032ffc8)
  13 0x7bc4c13e start_process+0x1d(kernel_start=0x7b85b680) [/home/julliard/wine/wine/dlls/ntdll/loader.c:2612] in ntdll (0x0032ffe8)
  14 0x6802998d wine_call_on_stack+0x1c() in libwine.so.1 (0x00000000)
0x00000000: -- no code accessible --

-- 
Alexandre Julliard
julliard at winehq.org



More information about the wine-devel mailing list