VirtualBox

Changeset 56770 in vbox


Ignore:
Timestamp:
Jul 3, 2015 12:00:07 PM (10 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
101419
Message:

tstRTR0DbgKrnlInfo: don't leak the stuff and don't panic the host with strict builds.

File:
1 edited

Legend:

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

    r56290 r56770  
    6565     * The big switch.
    6666     */
     67    bool fSavedMayPanic = RTAssertSetMayPanic(false); /* Don't crash the host with strict builds! */
     68    RTDBGKRNLINFO hKrnlInfo = NIL_RTDBGKRNLINFO;
    6769    switch (uOperation)
    6870    {
     
    7678        case TSTRTR0DBGKRNLINFO_BASIC:
    7779        {
    78             RTDBGKRNLINFO hKrnlInfo;
    7980            RTR0TESTR0_CHECK_RC_BREAK(RTR0DbgKrnlInfoOpen(&hKrnlInfo, 1), VERR_INVALID_PARAMETER);
    8081            RTR0TESTR0_CHECK_RC_BREAK(RTR0DbgKrnlInfoOpen(NULL, 0), VERR_INVALID_PARAMETER);
     
    9192            RTR0TESTR0_CHECK_RC_BREAK(RTR0DbgKrnlInfoQuerySymbol(hKrnlInfo, "TestModule", "Test", &pvSymbol), VERR_MODULE_NOT_FOUND);
    9293            RTR0TESTR0_CHECK_RC_BREAK(RTR0DbgKrnlInfoQuerySymbol(hKrnlInfo, NULL, NULL, &pvSymbol), VERR_INVALID_PARAMETER);
     94
     95            RTDBGKRNLINFO hTmp = hKrnlInfo;
     96            hKrnlInfo = NIL_RTDBGKRNLINFO;
     97            RTR0DbgKrnlInfoRelease(hKrnlInfo);
     98            uint32_t cRefs;
     99            RTR0TESTR0_CHECK_MSG((cRefs = RTR0DbgKrnlInfoRelease(hKrnlInfo)) == 0, ("cRefs=%#x", cRefs));
    93100            break;
    94101        }
     
    101108            break;
    102109    }
     110    if (hKrnlInfo != NIL_RTDBGKRNLINFO)
     111        RTR0DbgKrnlInfoRelease(hKrnlInfo);
     112    RTAssertSetMayPanic(fSavedMayPanic);
    103113
    104114    /* The error indicator is the '!' in the message buffer. */
Note: See TracChangeset for help on using the changeset viewer.

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