VirtualBox

Changeset 25621 in vbox for trunk/src/VBox/Runtime/testcase


Ignore:
Timestamp:
Jan 2, 2010 10:27:41 PM (15 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
56312
Message:

tstRTLockValidator: Added some recursion just to make sure it works.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Runtime/testcase/tstRTLockValidator.cpp

    r25619 r25621  
    230230
    231231    RTTEST_CHECK_RC_RET(g_hTest, RTCritSectEnter(pMine), VINF_SUCCESS, rcCheck);
     232    if (i & 1)
     233        RTTEST_CHECK_RC(g_hTest, RTCritSectEnter(pMine), VINF_SUCCESS);
    232234    if (testWaitForCritSectToBeOwned(pNext))
    233235    {
     
    244246        if (RT_SUCCESS(rc))
    245247            RTTEST_CHECK_RC(g_hTest, rc = RTCritSectLeave(pNext), VINF_SUCCESS);
     248    }
     249    if (i & 1)
    246250        RTTEST_CHECK_RC(g_hTest, RTCritSectLeave(pMine), VINF_SUCCESS);
    247     }
     251    RTTEST_CHECK_RC(g_hTest, RTCritSectLeave(pMine), VINF_SUCCESS);
    248252    return VINF_SUCCESS;
    249253}
     
    258262
    259263    if (i & 1)
     264    {
    260265        RTTEST_CHECK_RC_RET(g_hTest, RTSemRWRequestWrite(hMine, RT_INDEFINITE_WAIT), VINF_SUCCESS, rcCheck);
     266        if ((i & 3) == 3)
     267            RTTEST_CHECK_RC(g_hTest, RTSemRWRequestWrite(hMine, RT_INDEFINITE_WAIT), VINF_SUCCESS);
     268    }
    261269    else
    262270        RTTEST_CHECK_RC_RET(g_hTest, RTSemRWRequestRead(hMine, RT_INDEFINITE_WAIT), VINF_SUCCESS, rcCheck);
     
    281289    }
    282290    if (i & 1)
     291    {
     292        if ((i & 3) == 3)
     293            RTTEST_CHECK_RC(g_hTest, RTSemRWReleaseWrite(hMine), VINF_SUCCESS);
    283294        RTTEST_CHECK_RC(g_hTest, RTSemRWReleaseWrite(hMine), VINF_SUCCESS);
     295    }
    284296    else
    285297        RTTEST_CHECK_RC(g_hTest, RTSemRWReleaseRead(hMine), VINF_SUCCESS);
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette