VirtualBox

Changeset 90817 in vbox for trunk/src


Ignore:
Timestamp:
Aug 23, 2021 8:26:08 PM (3 years ago)
Author:
vboxsync
Message:

Storage: More VALID_PTR -> RT_VALID_PTR/AssertPtr.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Storage/VD.cpp

    r90816 r90817  
    84318431VBOXDDU_DECL(bool) VDIsReadOnly(PVDISK pDisk)
    84328432{
    8433     bool fReadOnly;
    8434     int rc2;
    8435     bool fLockRead = false;
    8436 
    84378433    LogFlowFunc(("pDisk=%#p\n", pDisk));
    8438     do
    8439     {
    8440         /* sanity check */
    8441         AssertPtrBreakStmt(pDisk, fReadOnly = false);
    8442         AssertMsg(pDisk->u32Signature == VDISK_SIGNATURE, ("u32Signature=%08x\n", pDisk->u32Signature));
    8443 
    8444         rc2 = vdThreadStartRead(pDisk);
    8445         AssertRC(rc2);
    8446         fLockRead = true;
    8447 
    8448         PVDIMAGE pImage = pDisk->pLast;
    8449         AssertPtrBreakStmt(pImage, fReadOnly = true);
    8450 
    8451         unsigned uOpenFlags;
    8452         uOpenFlags = pDisk->pLast->Backend->pfnGetOpenFlags(pDisk->pLast->pBackendData);
     8434    /* sanity check */
     8435    AssertPtrReturn(pDisk, true);
     8436    AssertMsg(pDisk->u32Signature == VDISK_SIGNATURE, ("u32Signature=%08x\n", pDisk->u32Signature));
     8437
     8438    int rc2 = vdThreadStartRead(pDisk);
     8439    AssertRC(rc2);
     8440
     8441    bool fReadOnly = true;
     8442    PVDIMAGE pImage = pDisk->pLast;
     8443    AssertPtr(pImage);
     8444    if (pImage)
     8445    {
     8446        unsigned uOpenFlags = pDisk->pLast->Backend->pfnGetOpenFlags(pDisk->pLast->pBackendData);
    84538447        fReadOnly = !!(uOpenFlags & VD_OPEN_FLAGS_READONLY);
    8454     } while (0);
    8455 
    8456     if (RT_UNLIKELY(fLockRead))
    8457     {
    8458         rc2 = vdThreadFinishRead(pDisk);
    8459         AssertRC(rc2);
    8460     }
     8448    }
     8449
     8450    rc2 = vdThreadFinishRead(pDisk);
     8451    AssertRC(rc2);
    84618452
    84628453    LogFlowFunc(("returns %d\n", fReadOnly));
     
    84678458VBOXDDU_DECL(uint32_t) VDGetSectorSize(PVDISK pDisk, unsigned nImage)
    84688459{
    8469     uint64_t cbSector;
    8470     int rc2;
    8471     bool fLockRead = false;
    8472 
    84738460    LogFlowFunc(("pDisk=%#p nImage=%u\n", pDisk, nImage));
    8474     do
    8475     {
    8476         /* sanity check */
    8477         AssertPtrBreakStmt(pDisk, cbSector = 0);
    8478         AssertMsg(pDisk->u32Signature == VDISK_SIGNATURE, ("u32Signature=%08x\n", pDisk->u32Signature));
    8479 
    8480         rc2 = vdThreadStartRead(pDisk);
    8481         AssertRC(rc2);
    8482         fLockRead = true;
    8483 
    8484         PVDIMAGE pImage = vdGetImageByNumber(pDisk, nImage);
    8485         AssertPtrBreakStmt(pImage, cbSector = 0);
    8486 
     8461    /* sanity check */
     8462    AssertPtrReturn(pDisk, 0);
     8463    AssertMsg(pDisk->u32Signature == VDISK_SIGNATURE, ("u32Signature=%08x\n", pDisk->u32Signature));
     8464
     8465    /* Do the job. */
     8466    int rc2 = vdThreadStartRead(pDisk);
     8467    AssertRC(rc2);
     8468
     8469    uint64_t cbSector = 0;
     8470    PVDIMAGE pImage = vdGetImageByNumber(pDisk, nImage);
     8471    AssertPtr(pImage);
     8472    if (pImage)
     8473    {
    84878474        PCVDREGIONLIST pRegionList = NULL;
    84888475        int rc = pImage->Backend->pfnQueryRegions(pImage->pBackendData, &pRegionList);
    84898476        if (RT_SUCCESS(rc))
    84908477        {
    8491             AssertBreakStmt(pRegionList->cRegions == 1, cbSector = 0);
    8492             cbSector = pRegionList->aRegions[0].cbBlock;
    8493 
    8494             AssertPtr(pImage->Backend->pfnRegionListRelease);
    8495             pImage->Backend->pfnRegionListRelease(pImage->pBackendData, pRegionList);
    8496         }
    8497         else
    8498             cbSector = 0;
    8499     } while (0);
    8500 
    8501     if (RT_UNLIKELY(fLockRead))
    8502     {
    8503         rc2 = vdThreadFinishRead(pDisk);
    8504         AssertRC(rc2);
    8505     }
     8478            AssertMsg(pRegionList->cRegions == 1, ("%u\n", pRegionList->cRegions));
     8479            if (pRegionList->cRegions == 1)
     8480            {
     8481                cbSector = pRegionList->aRegions[0].cbBlock;
     8482
     8483                AssertPtr(pImage->Backend->pfnRegionListRelease);
     8484                pImage->Backend->pfnRegionListRelease(pImage->pBackendData, pRegionList);
     8485            }
     8486        }
     8487    }
     8488
     8489    rc2 = vdThreadFinishRead(pDisk);
     8490    AssertRC(rc2);
    85068491
    85078492    LogFlowFunc(("returns %u\n", cbSector));
     
    85148499    LogFlowFunc(("pDisk=%#p nImage=%u\n", pDisk, nImage));
    85158500    /* sanity check */
    8516     AssertPtrReturn(pDisk, VERR_INVALID_POINTER);
     8501    AssertPtrReturn(pDisk, 0);
    85178502    AssertMsg(pDisk->u32Signature == VDISK_SIGNATURE, ("u32Signature=%08x\n", pDisk->u32Signature));
    85188503
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