VirtualBox

Changeset 77981 in vbox for trunk/src/VBox/Runtime/common


Ignore:
Timestamp:
Apr 1, 2019 6:49:03 PM (6 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
129748
Message:

Runtime/dbgmod.cpp: Make RTDbgModCreateFromMap(), RTDbgModCreateFromImage(), rtDbgModFromPeImageOpenCallback() and rtDbgModFromMachOImageOpenDsymMachOCallback() return VERR_DBG_NO_MATCHING_INTERPRETER (like it was probably intended to) if no matching backend was found instead of just returning the error code (like VERR_EOF) of the last backend tried

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Runtime/common/dbg/dbgmod.cpp

    r76553 r77981  
    413413                if (RT_SUCCESS(rc))
    414414                {
    415                     rc = VERR_DBG_NO_MATCHING_INTERPRETER;
    416415                    for (PRTDBGMODREGDBG pCur = g_pDbgHead; pCur; pCur = pCur->pNext)
    417416                    {
     
    433432
    434433                    /* bail out */
     434                    rc = VERR_DBG_NO_MATCHING_INTERPRETER;
    435435                    RTSemRWReleaseRead(g_hDbgModRWSem);
    436436                }
     
    836836                if (RT_SUCCESS(rc))
    837837                {
    838                     rc = VERR_DBG_NO_MATCHING_INTERPRETER;
    839838                    PRTDBGMODREGIMG pImg;
    840839                    for (pImg = g_pImgHead; pImg; pImg = pImg->pNext)
     
    913912
    914913                    /* bail out */
     914                    rc = VERR_DBG_NO_MATCHING_INTERPRETER;
    915915                    RTSemRWReleaseRead(g_hDbgModRWSem);
    916916                }
     
    980980            pDbgMod->pImgVt    = pImg->pVt;
    981981            pDbgMod->pvImgPriv = NULL;
    982             rc = pImg->pVt->pfnTryOpen(pDbgMod, RTLDRARCH_WHATEVER);
    983             if (RT_SUCCESS(rc))
     982            int rc2 = pImg->pVt->pfnTryOpen(pDbgMod, RTLDRARCH_WHATEVER);
     983            if (RT_SUCCESS(rc2))
     984            {
     985                rc = rc2;
    984986                break;
     987            }
    985988            pDbgMod->pImgVt    = NULL;
    986989            Assert(pDbgMod->pvImgPriv == NULL);
     
    12561259            pDbgMod->pImgVt    = pImg->pVt;
    12571260            pDbgMod->pvImgPriv = NULL;
    1258             rc = pImg->pVt->pfnTryOpen(pDbgMod, pArgs->enmArch);
    1259             if (RT_SUCCESS(rc))
     1261            int rc2 = pImg->pVt->pfnTryOpen(pDbgMod, pArgs->enmArch);
     1262            if (RT_SUCCESS(rc2))
     1263            {
     1264                rc = rc2;
    12601265                break;
     1266            }
    12611267            pDbgMod->pImgVt    = NULL;
    12621268            Assert(pDbgMod->pvImgPriv == NULL);
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