Changeset 3548 for trunk/src


Ignore:
Timestamp:
May 18, 2000, 11:09:04 AM (25 years ago)
Author:
sandervl
Message:

async select clear fix

Location:
trunk/src/wsock32
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wsock32/asyncthread.cpp

    r3378 r3548  
    1 /* $Id: asyncthread.cpp,v 1.4 2000-04-15 09:23:36 sandervl Exp $ */
     1/* $Id: asyncthread.cpp,v 1.5 2000-05-18 09:09:03 sandervl Exp $ */
    22
    33/*
     
    176176   pThreadInfo = threadList;
    177177   while(pThreadInfo) {
    178         if(pThreadInfo->u.asyncselect.s == s) {
     178        if(pThreadInfo->u.asyncselect.s == s && !pThreadInfo->fRemoved) {
    179179                return pThreadInfo;
    180180        }
     
    196196        pThreadInfo->hwnd                  = hwnd;
    197197        pThreadInfo->msg                   = msg;
     198        if(lEvent == 0) {
     199                //make sure this thread isn't used anymore
     200                pThreadInfo->fRemoved = TRUE;
     201        }
    198202        //cancel pending select in async select thread (if any)
    199203        so_cancel(s);
  • trunk/src/wsock32/asyncthread.h

    r3229 r3548  
    1 /* $Id: asyncthread.h,v 1.3 2000-03-24 19:28:04 sandervl Exp $ */
     1/* $Id: asyncthread.h,v 1.4 2000-05-18 09:09:04 sandervl Exp $ */
    22
    33/*
     
    3232        BOOL            fActive;
    3333        BOOL            fCancelled;
     34        BOOL            fConnected;
     35        BOOL            fRemoved;  //async select
    3436        AsyncRequestType request;
    3537        LHANDLE         hAsyncTaskHandle;
  • trunk/src/wsock32/wsock32.cpp

    r3504 r3548  
    1 /* $Id: wsock32.cpp,v 1.31 2000-05-09 19:01:23 sandervl Exp $ */
     1/* $Id: wsock32.cpp,v 1.32 2000-05-18 09:09:04 sandervl Exp $ */
    22
    33/*
     
    322322                        return NO_ERROR;
    323323                }
    324                 else {
     324                else
     325                if(lEvent != 0) {
    325326                        dprintf(("Trying to set socket to blocking mode while async select active -> return error!"));
    326327                        WSASetLastError(WSAEINVAL);
Note: See TracChangeset for help on using the changeset viewer.