Detlef Riekenberg : ws2_32: Use only the lower 16 bit as level when calling [g|s]etsockopt from 16 bit .
Alexandre Julliard
julliard at winehq.org
Tue Aug 25 08:45:14 CDT 2009
Module: wine
Branch: master
Commit: 3e87a054764f5d1aa99387767dd21be77c712c1f
URL: http://source.winehq.org/git/wine.git/?a=commit;h=3e87a054764f5d1aa99387767dd21be77c712c1f
Author: Detlef Riekenberg <wine.dev at web.de>
Date: Mon Aug 24 22:32:53 2009 +0200
ws2_32: Use only the lower 16 bit as level when calling [g|s]etsockopt from 16 bit.
---
dlls/ws2_32/socket16.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/dlls/ws2_32/socket16.c b/dlls/ws2_32/socket16.c
index b4b3fe8..3cd500f 100644
--- a/dlls/ws2_32/socket16.c
+++ b/dlls/ws2_32/socket16.c
@@ -294,8 +294,9 @@ INT16 WINAPI getsockopt16(SOCKET16 s, INT16 level, INT16 optname, char *optval,
INT optlen32;
INT *p = &optlen32;
INT retVal;
+
if( optlen ) optlen32 = *optlen; else p = NULL;
- retVal = WS_getsockopt( s, level, optname, optval, p );
+ retVal = WS_getsockopt( s, (WORD)level, optname, optval, p );
if( optlen ) *optlen = optlen32;
return retVal;
}
@@ -397,7 +398,7 @@ INT16 WINAPI setsockopt16(SOCKET16 s, INT16 level, INT16 optname,
char *optval, INT16 optlen)
{
if( !optval ) return SOCKET_ERROR;
- return WS_setsockopt( s, level, optname, optval, optlen );
+ return WS_setsockopt( s, (WORD)level, optname, optval, optlen );
}
/***********************************************************************
More information about the wine-cvs
mailing list