Changeset 3557 for trunk/src/wsock32


Ignore:
Timestamp:
May 19, 2000, 12:54:21 AM (25 years ago)
Author:
sandervl
Message:

don't always call so_cancel

Location:
trunk/src/wsock32
Files:
3 edited

Legend:

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

    r3472 r3557  
    1 /* $Id: asyncapi.cpp,v 1.7 2000-05-02 13:09:43 bird Exp $ */
     1/* $Id: asyncapi.cpp,v 1.8 2000-05-18 22:54:20 sandervl Exp $ */
    22
    33/*
     
    462462////        dprintf(("WSAsyncSelectThreadProc %x rds=%d, wrs=%d, oos =%d, pending = %x", pThreadParm->u.asyncselect.s, noread, nowrite, noexcept, lEventsPending));
    463463
     464        pThreadParm->fWaitSelect = TRUE;
    464465        ret = select((int *)sockets, nr(noread), nr(nowrite), nr(noexcept), -1);
     466        pThreadParm->fWaitSelect = FALSE;
    465467        if(ret == SOCKET_ERROR) {
    466468                int selecterr = sock_errno();
  • trunk/src/wsock32/asyncthread.cpp

    r3548 r3557  
    1 /* $Id: asyncthread.cpp,v 1.5 2000-05-18 09:09:03 sandervl Exp $ */
     1/* $Id: asyncthread.cpp,v 1.6 2000-05-18 22:54:21 sandervl Exp $ */
    22
    33/*
     
    200200                pThreadInfo->fRemoved = TRUE;
    201201        }
    202         //cancel pending select in async select thread (if any)
    203         so_cancel(s);
     202        if(pThreadInfo->fWaitSelect) {
     203                //cancel pending select in async select thread (if any)
     204                so_cancel(s);
     205        }
    204206
    205207        //unblock async thread if it was waiting
     
    223225
    224226        //cancel pending select in async select thread (if any)
    225         so_cancel(s);
     227        if(pThreadInfo->fWaitSelect) {
     228                so_cancel(s);
     229        }
    226230   }
    227231   asyncThreadMutex.leave();
  • trunk/src/wsock32/asyncthread.h

    r3548 r3557  
    1 /* $Id: asyncthread.h,v 1.4 2000-05-18 09:09:04 sandervl Exp $ */
     1/* $Id: asyncthread.h,v 1.5 2000-05-18 22:54:21 sandervl Exp $ */
    22
    33/*
     
    3333        BOOL            fCancelled;
    3434        BOOL            fConnected;
     35        BOOL            fWaitSelect;
    3536        BOOL            fRemoved;  //async select
    3637        AsyncRequestType request;
Note: See TracChangeset for help on using the changeset viewer.