Ignore:
Timestamp:
Feb 24, 2003, 12:14:30 PM (23 years ago)
Author:
sandervl
Message:

WSASend/Recv fixes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/ws2_32/socket.cpp

    r9841 r9843  
    1 /* $Id: socket.cpp,v 1.15 2003-02-24 10:03:58 sandervl Exp $ */
     1/* $Id: socket.cpp,v 1.16 2003-02-24 11:14:30 sandervl Exp $ */
    22/*
    33 * based on Windows Sockets 1.1 specs
     
    205205            tmpret = send(s, lpBuffers[i].buf, lpBuffers[i].len,  dwFlags);
    206206            if(tmpret != SOCKET_ERROR) {
    207                 *lpNumberOfBytesSent += ret;
     207                *lpNumberOfBytesSent += tmpret;
    208208            }
    209209            else {
     
    211211                break;
    212212            }
     213        }
     214        if(*lpNumberOfBytesSent) {
     215            WSASetLastError(NO_ERROR);
     216            ret = NO_ERROR;
    213217        }
    214218        return ret;
     
    259263            tmpret = recv(s, lpBuffers[i].buf, lpBuffers[i].len,  *lpFlags);
    260264            if(tmpret != SOCKET_ERROR) {
    261                 *lpNumberOfBytesReceived += ret;
     265                *lpNumberOfBytesReceived += tmpret;
    262266            }
    263267            else {
     
    266270            }
    267271        }
     272        if(*lpNumberOfBytesReceived) {
     273            WSASetLastError(NO_ERROR);
     274            ret = NO_ERROR;
     275        }
     276        dprintf(("WSARecv returned %d (read %x)", ret, *lpNumberOfBytesReceived));
    268277        *lpFlags = 0; //what to do with this?
    269278        return ret;
Note: See TracChangeset for help on using the changeset viewer.