Ignore:
Timestamp:
Jul 17, 2000, 2:40:55 AM (25 years ago)
Author:
phaller
Message:

Fix: HMWaitForSingleObject

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/kernel32/HandleManager.cpp

    r3819 r3837  
    1 /* $Id: HandleManager.cpp,v 1.42 2000-07-12 18:21:40 sandervl Exp $ */
     1/* $Id: HandleManager.cpp,v 1.43 2000-07-17 00:40:17 phaller Exp $ */
    22
    33/*
     
    7070
    7171                    /* this is the size of our currently static handle table */
    72 #define MAX_OS2_HMHANDLES 2048
     72#define MAX_OS2_HMHANDLES 4096
    7373
    7474
     
    17641764  dwResult = pHMHandle->pDeviceHandler->WaitForSingleObject(&pHMHandle->hmHandleData,
    17651765                                                            dwTimeout);
    1766 
     1766  // @@@PH Note: return code is wrong!
     1767  switch (dwResult)
     1768  {
     1769    case 1: // OS/2: ERROR_INVALID_FUNCTION
     1770      dprintf(("KERNEL32: HandleManager:HMWaitForSingleObject(%08xh) %s needs implementation\n",
     1771               pHMHandle->pDeviceHandler->lpHMDeviceName));
     1772      dwResult = WAIT_ABANDONED;
     1773      break;
     1774 
     1775    case 640: // OS/2: ERROR_TIMEOUT
     1776      dwResult = WAIT_TIMEOUT;
     1777      break;
     1778 
     1779    case 105: // ERROR_SEM_OWNER_DIED:
     1780    case 95:  // ERROR_INTERRUPT
     1781      dwResult = WAIT_ABANDONED;
     1782      break;
     1783     
     1784    case NO_ERROR:
     1785      dwResult = WAIT_OBJECT_0;
     1786      break;
     1787     
     1788    default:
     1789      SetLastError(dwResult);
     1790      dwResult = WAIT_FAILED;
     1791      break;
     1792  }
     1793 
    17671794  return (dwResult);                                  /* deliver return code */
    17681795}
Note: See TracChangeset for help on using the changeset viewer.