[Bug 20372] New: WS2_register_async_shutdown forgets to initialize local_iosb.Information to zero?
wine-bugs at winehq.org
wine-bugs at winehq.org
Wed Oct 14 19:06:39 CDT 2009
http://bugs.winehq.org/show_bug.cgi?id=20372
Summary: WS2_register_async_shutdown forgets to initialize
local_iosb.Information to zero?
Product: Wine
Version: 1.1.31
Platform: PC
OS/Version: Linux
Status: NEW
Keywords: download, patch, source
Severity: normal
Priority: P2
Component: winsock
AssignedTo: wine-bugs at winehq.org
ReportedBy: dank at kegel.com
TCPClientSocketTest.Connect, SSLClientSocketTest.Connect, and
TCPPingerTest.Ping
all exhibit valgrind warnings like this:
Syscall param writev(vector[...]) points to uninitialised byte(s)
at writev (writev.c:46)
by send_request (server.c:214)
by wine_server_call (server.c:295)
by NTDLL_wait_for_multiple_objects (sync.c:1122)
by wait_suspend (exception.c:85)
by usr1_handler (signal_i386.c:1993)
Address 0x7ffdadfc is on thread 1's stack
Uninitialised value was created by a client request
at mark_block_uninitialized (heap.c:187)
by RtlAllocateHeap (heap.c:1429)
by WS2_register_async_shutdown (socket.c:1522)
by WS_shutdown (socket.c:3444)
by net::TCPClientSocketWin::Disconnect (tcp_client_socket_win.cc:345)
by net::`anonymous namespace'::TCPClientSocketTest_Connect_Test::TestBody
(tcp_client_socket_unittest.cc:110)
There are similar errors on other tests that call WS_shutdown.
This looks oddly like the problem in bug 20336, and indeed, clearing
local_iosb.Information gets rid of the warning:
--- a/dlls/ws2_32/socket.c
+++ b/dlls/ws2_32/socket.c
@@ -1526,6 +1526,7 @@ static int WS2_register_async_shutdown( SOCKET s, int
type )
wsa->hSocket = SOCKET2HANDLE(s);
wsa->type = type;
wsa->completion_func = NULL;
+ wsa->local_iosb.Information = 0;
SERVER_START_REQ( register_async )
{
Is this the right place to do it, or should the system be clearing
it instead somewhere else?
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.
More information about the wine-bugs
mailing list