VirtualBox

Changeset 98273 in vbox for trunk/src


Ignore:
Timestamp:
Jan 24, 2023 11:17:31 AM (2 years ago)
Author:
vboxsync
Message:

Main/GuestDnD*: rc -> hrc/vrc. bugref:10223

Location:
trunk/src/VBox/Main
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/include/GuestDnDPrivate.h

    r98103 r98273  
    6868    GuestDnDCallbackEvent(void)
    6969        : m_SemEvent(NIL_RTSEMEVENT)
    70         , m_Rc(VINF_SUCCESS) { }
     70        , m_vrc(VINF_SUCCESS) { }
    7171
    7272    virtual ~GuestDnDCallbackEvent(void);
     
    7676    int Reset(void);
    7777
    78     int Notify(int rc = VINF_SUCCESS);
    79 
    80     int Result(void) const { return m_Rc; }
     78    int Notify(int vrc = VINF_SUCCESS);
     79
     80    int Result(void) const { return m_vrc; }
    8181
    8282    int Wait(RTMSINTERVAL msTimeout);
     
    8787    RTSEMEVENT m_SemEvent;
    8888    /** Callback result. */
    89     int        m_Rc;
     89    int        m_vrc;
    9090};
    9191
     
    124124        if (cbAllocatedTmp > cbAllocated)
    125125        {
    126             int rc = resize(cbAllocatedTmp);
    127             if (RT_FAILURE(rc))
     126            int vrc = resize(cbAllocatedTmp);
     127            if (RT_FAILURE(vrc))
    128128                return 0;
    129129        }
     
    440440    {
    441441        RT_ZERO(List);
    442         int rc2 = DnDTransferListInit(&List);
    443         AssertRC(rc2);
     442        int vrc2 = DnDTransferListInit(&List);
     443        AssertRC(vrc2);
    444444    }
    445445
     
    506506    {
    507507        RT_ZERO(DroppedFiles);
    508         int rc2 = DnDDroppedFilesInit(&DroppedFiles);
    509         AssertRC(rc2);
     508        int vrc2 = DnDDroppedFilesInit(&DroppedFiles);
     509        AssertRC(vrc2);
    510510
    511511        RT_ZERO(List);
    512         rc2 = DnDTransferListInit(&List);
    513         AssertRC(rc2);
     512        vrc2 = DnDTransferListInit(&List);
     513        AssertRC(vrc2);
    514514
    515515        RT_ZERO(ObjCur);
    516         rc2 = DnDTransferObjectInit(&ObjCur);
    517         AssertRC(rc2);
     516        vrc2 = DnDTransferObjectInit(&ObjCur);
     517        AssertRC(vrc2);
    518518    }
    519519
     
    828828    /** @name Guest response handling.
    829829     * @{ */
    830     int notifyAboutGuestResponse(int rcGuest = VINF_SUCCESS);
    831     int waitForGuestResponseEx(RTMSINTERVAL msTimeout = 3000, int *prcGuest = NULL);
    832     int waitForGuestResponse(int *prcGuest = NULL);
     830    int notifyAboutGuestResponse(int vrcGuest = VINF_SUCCESS);
     831    int waitForGuestResponseEx(RTMSINTERVAL msTimeout = 3000, int *pvrcGuest = NULL);
     832    int waitForGuestResponse(int *pvrcGuest = NULL);
    833833    /** @} */
    834834
     
    854854    bool isProgressCanceled(void) const;
    855855    bool isProgressRunning(void) const;
    856     int setProgress(unsigned uPercentage, uint32_t uState, int rcOp = VINF_SUCCESS, const Utf8Str &strMsg = "");
     856    int setProgress(unsigned uPercentage, uint32_t uState, int vrcOp = VINF_SUCCESS,
     857                    const Utf8Str &strMsg = Utf8Str::Empty /** @todo figure out what's the best way to pass empty Utf8Str by default - probably = Utf8Str() */);
    857858    HRESULT resetProgress(const ComObjPtr<Guest>& pParent, const Utf8Str &strDesc);
    858859    HRESULT queryProgressTo(IProgress **ppProgress);
     
    883884    /** Last error reported from guest.
    884885     *  Set to VERR_IPE_UNINITIALIZED_STATUS if not set yet. */
    885     int                   m_rcGuest;
     886    int                   m_vrcGuest;
    886887    /** Default action to perform in case of a
    887888     *  successful drop. */
     
    951952    typedef std::list< ComObjPtr<GuestDnDTarget> > GuestDnDTgtList;
    952953
    953     /** Constructor; will throw rc on failure. */
     954    /** Constructor; will throw vrc on failure. */
    954955    GuestDnD(const ComObjPtr<Guest>& pGuest);
    955956    virtual ~GuestDnD(void);
  • trunk/src/VBox/Main/src-client/GuestDnDPrivate.cpp

    r98103 r98273  
    162162
    163163/*********************************************************************************************************************************
    164  * Internal macros.                                                                                                              *
    165  ********************************************************************************************************************************/
     164*   Defined Constants And Macros                                                                                                 *
     165*********************************************************************************************************************************/
    166166
    167167/** Tries locking the GuestDnD object and returns on failure. */
    168 #define GUESTDND_LOCK() \
    169     { \
    170         int rcLock = RTCritSectEnter(&m_CritSect); \
    171         if (RT_FAILURE(rcLock)) \
    172             return rcLock; \
    173     }
     168#define GUESTDND_LOCK() do { \
     169        int const vrcLock = RTCritSectEnter(&m_CritSect); \
     170        if (RT_SUCCESS(vrcLock)) { /* likely */ } else return vrcLock; \
     171    } while (0)
    174172
    175173/** Tries locking the GuestDnD object and returns a_Ret failure. */
    176 #define GUESTDND_LOCK_RET(a_Ret) \
    177     { \
    178         int rcLock = RTCritSectEnter(&m_CritSect); \
    179         if (RT_FAILURE(rcLock)) \
    180             return a_Ret; \
    181     }
     174#define GUESTDND_LOCK_RET(a_Ret) do { \
     175        int const vrcLock = RTCritSectEnter(&m_CritSect); \
     176        if (RT_SUCCESS(vrcLock)) { /* likely */ } else return vrcLock; \
     177    } while (0)
    182178
    183179/** Unlocks a formerly locked GuestDnD object. */
    184 #define GUESTDND_UNLOCK() \
    185     { \
    186         int rcUnlock = RTCritSectLeave(&m_CritSect); RT_NOREF(rcUnlock); \
    187         AssertRC(rcUnlock); \
    188     }
     180#define GUESTDND_UNLOCK() do { \
     181        int const vrcUnlock = RTCritSectLeave(&m_CritSect); \
     182        AssertRC(vrcUnlock); \
     183    } while (0)
     184
    189185
    190186/*********************************************************************************************************************************
    191  * GuestDnDSendCtx implementation.                                                                                               *
    192  ********************************************************************************************************************************/
     187*   GuestDnDSendCtx implementation.                                                                                              *
     188*********************************************************************************************************************************/
    193189
    194190GuestDnDSendCtx::GuestDnDSendCtx(void)
     
    208204    Transfer.reset();
    209205
    210     int rc2 = EventCallback.Reset();
    211     AssertRC(rc2);
     206    int vrc2 = EventCallback.Reset();
     207    AssertRC(vrc2);
    212208
    213209    GuestDnDData::reset();
    214210}
    215211
     212
    216213/*********************************************************************************************************************************
    217  * GuestDnDRecvCtx implementation.                                                                                               *
    218  ********************************************************************************************************************************/
     214*   GuestDnDRecvCtx implementation.                                                                                              *
     215*********************************************************************************************************************************/
    219216
    220217GuestDnDRecvCtx::GuestDnDRecvCtx(void)
     
    237234    Transfer.reset();
    238235
    239     int rc2 = EventCallback.Reset();
    240     AssertRC(rc2);
     236    int vrc2 = EventCallback.Reset();
     237    AssertRC(vrc2);
    241238
    242239    GuestDnDData::reset();
    243240}
    244241
     242
    245243/*********************************************************************************************************************************
    246  * GuestDnDCallbackEvent implementation.                                                                                         *
    247  ********************************************************************************************************************************/
     244*   GuestDnDCallbackEvent implementation.                                                                                        *
     245*********************************************************************************************************************************/
    248246
    249247GuestDnDCallbackEvent::~GuestDnDCallbackEvent(void)
     
    258256int GuestDnDCallbackEvent::Reset(void)
    259257{
    260     int rc = VINF_SUCCESS;
    261 
    262     if (NIL_RTSEMEVENT == m_SemEvent)
    263         rc = RTSemEventCreate(&m_SemEvent);
    264 
    265     m_Rc = VINF_SUCCESS;
    266     return rc;
     258    int vrc = VINF_SUCCESS;
     259
     260    if (m_SemEvent == NIL_RTSEMEVENT)
     261        vrc = RTSemEventCreate(&m_SemEvent);
     262
     263    m_vrc = VINF_SUCCESS;
     264    return vrc;
    267265}
    268266
     
    271269 *
    272270 * @returns VBox status code.
    273  * @param   rc                  Result code to use for the event completion.
    274  */
    275 int GuestDnDCallbackEvent::Notify(int rc /* = VINF_SUCCESS */)
    276 {
    277     m_Rc = rc;
     271 * @param   vrc                 Result code to use for the event completion.
     272 */
     273int GuestDnDCallbackEvent::Notify(int vrc /* = VINF_SUCCESS */)
     274{
     275    m_vrc = vrc;
    278276    return RTSemEventSignal(m_SemEvent);
    279277}
     
    290288}
    291289
    292 /********************************************************************************************************************************
    293  *
    294  ********************************************************************************************************************************/
     290
     291/*********************************************************************************************************************************
     292*   GuestDnDState implementation                                                                                                 *
     293*********************************************************************************************************************************/
    295294
    296295GuestDnDState::GuestDnDState(const ComObjPtr<Guest>& pGuest)
     
    302301    reset();
    303302
    304     int rc = RTCritSectInit(&m_CritSect);
    305     if (RT_FAILURE(rc))
    306         throw rc;
    307     rc = RTSemEventCreate(&m_EventSem);
    308     if (RT_FAILURE(rc))
    309         throw rc;
     303    int vrc = RTCritSectInit(&m_CritSect);
     304    if (RT_FAILURE(vrc))
     305        throw vrc;
     306    vrc = RTSemEventCreate(&m_EventSem);
     307    if (RT_FAILURE(vrc))
     308        throw vrc;
    310309}
    311310
    312311GuestDnDState::~GuestDnDState(void)
    313312{
    314     int rc = RTSemEventDestroy(m_EventSem);
    315     AssertRC(rc);
    316     rc = RTCritSectDelete(&m_CritSect);
    317     AssertRC(rc);
     313    int vrc = RTSemEventDestroy(m_EventSem);
     314    AssertRC(vrc);
     315    vrc = RTCritSectDelete(&m_CritSect);
     316    AssertRC(vrc);
    318317}
    319318
     
    322321 *
    323322 * @returns VBox status code.
    324  * @param   rcGuest             Guest rc to set for the response.
    325  *                              Defaults to VINF_SUCCESS (for success).
    326  */
    327 int GuestDnDState::notifyAboutGuestResponse(int rcGuest /* = VINF_SUCCESS */)
    328 {
    329     m_rcGuest = rcGuest;
     323 * @param   vrcGuest    Guest VBox status code to set for the response.
     324 *                      Defaults to VINF_SUCCESS (for success).
     325 */
     326int GuestDnDState::notifyAboutGuestResponse(int vrcGuest /* = VINF_SUCCESS */)
     327{
     328    m_vrcGuest = vrcGuest;
    330329    return RTSemEventSignal(m_EventSem);
    331330}
     
    346345    m_mapCallbacks.clear();
    347346
    348     m_rcGuest = VERR_IPE_UNINITIALIZED_STATUS;
     347    m_vrcGuest = VERR_IPE_UNINITIALIZED_STATUS;
    349348}
    350349
     
    409408    }
    410409
    411     LogFlowFunc(("Returning rc=%Rrc\n", vrc));
     410    LogFlowFunc(("Returning vrc=%Rrc\n", vrc));
    412411    return vrc;
    413412}
     
    426425    m_pProgress.setNull();
    427426
    428     HRESULT hr = m_pProgress.createObject();
    429     if (SUCCEEDED(hr))
    430     {
    431         hr = m_pProgress->init(static_cast<IGuest *>(pParent),
    432                                Bstr(strDesc).raw(),
    433                                TRUE /* aCancelable */);
    434     }
    435 
    436     return hr;
     427    HRESULT hrc = m_pProgress.createObject();
     428    if (SUCCEEDED(hrc))
     429        hrc = m_pProgress->init(static_cast<IGuest *>(pParent), Bstr(strDesc).raw(), TRUE /* aCancelable */);
     430
     431    return hrc;
    437432}
    438433
     
    448443
    449444    BOOL fCanceled;
    450     HRESULT hr = m_pProgress->COMGETTER(Canceled)(&fCanceled);
    451     AssertComRCReturn(hr, false);
     445    HRESULT hrc = m_pProgress->COMGETTER(Canceled)(&fCanceled);
     446    AssertComRCReturn(hrc, false);
    452447    return RT_BOOL(fCanceled);
    453448}
     
    464459
    465460    BOOL fCompleted;
    466     HRESULT const hr = m_pProgress->COMGETTER(Completed)(&fCompleted);
    467     AssertComRCReturn(hr, false);
     461    HRESULT const hrc = m_pProgress->COMGETTER(Completed)(&fCompleted);
     462    AssertComRCReturn(hrc, false);
    468463    return !RT_BOOL(fCompleted);
    469464}
     
    508503 * @param   uPercentage         Percentage (0-100) to set.
    509504 * @param   uStatus             Status (of type DND_PROGRESS_XXX) to set.
    510  * @param   rcOp                IPRT-style result code to set. Optional.
     505 * @param   vrcOp               VBox status code to set. Optional.
    511506 * @param   strMsg              Message to set. Optional.
    512507 */
    513508int GuestDnDState::setProgress(unsigned uPercentage, uint32_t uStatus,
    514                                int rcOp /* = VINF_SUCCESS */, const Utf8Str &strMsg /* = "" */)
    515 {
    516     LogFlowFunc(("uPercentage=%u, uStatus=%RU32, , rcOp=%Rrc, strMsg=%s\n",
    517                  uPercentage, uStatus, rcOp, strMsg.c_str()));
    518 
    519     HRESULT hr = S_OK;
     509                               int vrcOp /* = VINF_SUCCESS */, const Utf8Str &strMsg /* = "" */)
     510{
     511    LogFlowFunc(("uPercentage=%u, uStatus=%RU32, , vrcOp=%Rrc, strMsg=%s\n",
     512                 uPercentage, uStatus, vrcOp, strMsg.c_str()));
    520513
    521514    if (m_pProgress.isNull())
     
    523516
    524517    BOOL fCompleted = FALSE;
    525     hr = m_pProgress->COMGETTER(Completed)(&fCompleted);
    526     AssertComRCReturn(hr, VERR_COM_UNEXPECTED);
     518    HRESULT hrc = m_pProgress->COMGETTER(Completed)(&fCompleted);
     519    AssertComRCReturn(hrc, VERR_COM_UNEXPECTED);
    527520
    528521    BOOL fCanceled  = FALSE;
    529     hr = m_pProgress->COMGETTER(Canceled)(&fCanceled);
    530     AssertComRCReturn(hr, VERR_COM_UNEXPECTED);
     522    hrc = m_pProgress->COMGETTER(Canceled)(&fCanceled);
     523    AssertComRCReturn(hrc, VERR_COM_UNEXPECTED);
    531524
    532525    LogFlowFunc(("Progress fCompleted=%RTbool, fCanceled=%RTbool\n", fCompleted, fCanceled));
    533526
    534     int rc = VINF_SUCCESS;
     527    int vrc = VINF_SUCCESS;
    535528
    536529    switch (uStatus)
     
    538531        case DragAndDropSvc::DND_PROGRESS_ERROR:
    539532        {
    540             LogRel(("DnD: Guest reported error %Rrc\n", rcOp));
     533            LogRel(("DnD: Guest reported error %Rrc\n", vrcOp));
    541534
    542535            if (!fCompleted)
    543                 hr = m_pProgress->i_notifyComplete(VBOX_E_DND_ERROR,
    544                                                    COM_IIDOF(IGuest),
    545                                                    m_pParent->getComponentName(), strMsg.c_str());
     536                hrc = m_pProgress->i_notifyComplete(VBOX_E_DND_ERROR, COM_IIDOF(IGuest),
     537                                                    m_pParent->getComponentName(), strMsg.c_str());
    546538            break;
    547539        }
     
    553545            if (!fCanceled)
    554546            {
    555                 hr = m_pProgress->Cancel();
    556                 AssertComRC(hr);
     547                hrc = m_pProgress->Cancel();
     548                AssertComRC(hrc);
    557549            }
    558550
    559551            if (!fCompleted)
    560552            {
    561                 hr = m_pProgress->i_notifyComplete(S_OK);
    562                 AssertComRC(hr);
     553                hrc = m_pProgress->i_notifyComplete(S_OK);
     554                AssertComRC(hrc);
    563555            }
    564556            break;
     
    574566                && !fCanceled)
    575567            {
    576                 hr = m_pProgress->SetCurrentOperationProgress(uPercentage);
    577                 AssertComRCReturn(hr, VERR_COM_UNEXPECTED);
     568                hrc = m_pProgress->SetCurrentOperationProgress(uPercentage);
     569                AssertComRCReturn(hrc, VERR_COM_UNEXPECTED);
    578570                if (   uStatus     == DragAndDropSvc::DND_PROGRESS_COMPLETE
    579571                    || uPercentage >= 100)
    580572                {
    581                     hr = m_pProgress->i_notifyComplete(S_OK);
    582                     AssertComRCReturn(hr, VERR_COM_UNEXPECTED);
     573                    hrc = m_pProgress->i_notifyComplete(S_OK);
     574                    AssertComRCReturn(hrc, VERR_COM_UNEXPECTED);
    583575                }
    584576            }
     
    590582    }
    591583
    592     LogFlowFuncLeaveRC(rc);
    593     return rc;
     584    LogFlowFuncLeaveRC(vrc);
     585    return vrc;
    594586}
    595587
     
    606598    LogFlowFunc(("u32Function=%RU32, pvParms=%p, cbParms=%RU32\n", u32Function, pvParms, cbParms));
    607599
    608     int rc = VERR_WRONG_ORDER; /* Play safe. */
     600    int vrc = VERR_WRONG_ORDER; /* Play safe. */
    609601
    610602    /* Whether or not to try calling host-installed callbacks after successfully processing the message. */
     
    625617            LogThisFunc(("Client connected, using protocol v%RU32\n", m_uProtocolVersion));
    626618
    627             rc = VINF_SUCCESS;
     619            vrc = VINF_SUCCESS;
    628620            break;
    629621        }
     
    640632            LogThisFunc(("Client reported features: %#RX64\n", m_fGuestFeatures0));
    641633
    642             rc = VINF_SUCCESS;
     634            vrc = VINF_SUCCESS;
    643635            break;
    644636        }
     
    650642        {
    651643            LogThisFunc(("Client disconnected\n"));
    652             rc = setProgress(100, DND_PROGRESS_CANCELLED, VINF_SUCCESS);
     644            vrc = setProgress(100, DND_PROGRESS_CANCELLED, VINF_SUCCESS);
    653645            break;
    654646        }
     
    664656
    665657            setActionDefault(pCBData->uAction);
    666             rc = notifyAboutGuestResponse();
     658            vrc = notifyAboutGuestResponse();
    667659            break;
    668660        }
     
    678670                || pCBData->cbFormat  > _64K /** @todo Make this configurable? */
    679671                || pCBData->pszFormat == NULL)
    680             {
    681                 rc = VERR_INVALID_PARAMETER;
    682             }
     672                vrc = VERR_INVALID_PARAMETER;
    683673            else if (!RTStrIsValidEncoding(pCBData->pszFormat))
    684             {
    685                 rc = VERR_INVALID_PARAMETER;
    686             }
     674                vrc = VERR_INVALID_PARAMETER;
    687675            else
    688676            {
    689677                setFormats(GuestDnD::toFormatList(pCBData->pszFormat));
    690                 rc = VINF_SUCCESS;
     678                vrc = VINF_SUCCESS;
    691679            }
    692680
    693             int rc2 = notifyAboutGuestResponse();
    694             if (RT_SUCCESS(rc))
    695                 rc = rc2;
     681            int vrc2 = notifyAboutGuestResponse();
     682            if (RT_SUCCESS(vrc))
     683                vrc = vrc2;
    696684            break;
    697685        }
     
    705693            AssertReturn(DragAndDropSvc::CB_MAGIC_DND_HG_EVT_PROGRESS == pCBData->hdr.uMagic, VERR_INVALID_PARAMETER);
    706694
    707             rc = setProgress(pCBData->uPercentage, pCBData->uStatus, pCBData->rc);
    708             if (RT_SUCCESS(rc))
    709                 rc = notifyAboutGuestResponse(pCBData->rc);
     695            vrc = setProgress(pCBData->uPercentage, pCBData->uStatus, pCBData->rc);
     696            if (RT_SUCCESS(vrc))
     697                vrc = notifyAboutGuestResponse(pCBData->rc);
    710698            break;
    711699        }
     
    725713                || pCBData->cbFormat  > _64K /** @todo Make the maximum size configurable? */
    726714                || pCBData->pszFormat == NULL)
    727             {
    728                 rc = VERR_INVALID_PARAMETER;
    729             }
     715                vrc = VERR_INVALID_PARAMETER;
    730716            else if (!RTStrIsValidEncoding(pCBData->pszFormat))
    731             {
    732                 rc = VERR_INVALID_PARAMETER;
    733             }
     717                vrc = VERR_INVALID_PARAMETER;
    734718            else
    735719            {
     
    738722                setActionsAllowed(pCBData->uAllActions);
    739723
    740                 rc = VINF_SUCCESS;
     724                vrc = VINF_SUCCESS;
    741725            }
    742726
    743             int rc2 = notifyAboutGuestResponse();
    744             if (RT_SUCCESS(rc))
    745                 rc = rc2;
     727            int vrc2 = notifyAboutGuestResponse();
     728            if (RT_SUCCESS(vrc))
     729                vrc = vrc2;
    746730            break;
    747731        }
     
    762746        {
    763747            AssertPtr(it->second.pfnCallback);
    764             rc = it->second.pfnCallback(u32Function, pvParms, cbParms, it->second.pvUser);
     748            vrc = it->second.pfnCallback(u32Function, pvParms, cbParms, it->second.pvUser);
    765749        }
    766750        else
    767751        {
    768752            /* Invoke the default callback handler in case we don't have any registered callback above. */
    769             rc = i_defaultCallback(u32Function, pvParms, cbParms, this /* pvUser */);
    770         }
    771     }
    772 
    773     LogFlowFunc(("Returning rc=%Rrc\n", rc));
    774     return rc;
     753            vrc = i_defaultCallback(u32Function, pvParms, cbParms, this /* pvUser */);
     754        }
     755    }
     756
     757    LogFlowFunc(("Returning vrc=%Rrc\n", vrc));
     758    return vrc;
    775759}
    776760
     
    793777 * @retval  VERR_DND_GUEST_ERROR on an error reported back from the guest.
    794778 * @param   msTimeout           Timeout (in ms) for waiting. Optional, waits 3000 ms if not specified.
    795  * @param   prcGuest            Where to return the guest error when VERR_DND_GUEST_ERROR is returned. Optional.
    796  */
    797 int GuestDnDState::waitForGuestResponseEx(RTMSINTERVAL msTimeout /* = 3000 */, int *prcGuest /* = NULL */)
     779 * @param   pvrcGuest           Where to return the guest error when
     780 *                              VERR_DND_GUEST_ERROR is returned. Optional.
     781 */
     782int GuestDnDState::waitForGuestResponseEx(RTMSINTERVAL msTimeout /* = 3000 */, int *pvrcGuest /* = NULL */)
    798783{
    799784    int vrc = RTSemEventWait(m_EventSem, msTimeout);
    800785    if (RT_SUCCESS(vrc))
    801786    {
    802         if (RT_FAILURE(m_rcGuest))
     787        if (RT_FAILURE(m_vrcGuest))
    803788            vrc = VERR_DND_GUEST_ERROR;
    804         if (prcGuest)
    805             *prcGuest = m_rcGuest;
     789        if (pvrcGuest)
     790            *pvrcGuest = m_vrcGuest;
    806791    }
    807792    return vrc;
     
    814799 * @retval  VERR_TIMEOUT when waiting has timed out.
    815800 * @retval  VERR_DND_GUEST_ERROR on an error reported back from the guest.
    816  * @param   prcGuest            Where to return the guest error when VERR_DND_GUEST_ERROR is returned. Optional.
     801 * @param   pvrcGuest            Where to return the guest error when
     802 *                               VERR_DND_GUEST_ERROR is returned. Optional.
    817803 *
    818804 * @note    Uses the default timeout of 3000 ms.
    819805 */
    820 int GuestDnDState::waitForGuestResponse(int *prcGuest /* = NULL */)
    821 {
    822     return waitForGuestResponseEx(3000 /* ms */, prcGuest);
     806int GuestDnDState::waitForGuestResponse(int *pvrcGuest /* = NULL */)
     807{
     808    return waitForGuestResponseEx(3000 /* ms */, pvrcGuest);
    823809}
    824810
     
    845831    }
    846832
    847     int rc = RTCritSectInit(&m_CritSect);
    848     if (RT_FAILURE(rc))
    849         throw rc;
     833    int vrc = RTCritSectInit(&m_CritSect);
     834    if (RT_FAILURE(vrc))
     835        throw vrc;
    850836
    851837    /* List of supported default MIME types. */
     
    888874    ComObjPtr<Console> pConsole = m_pGuest->i_getConsole();
    889875    ComPtr<IDisplay> pDisplay;
    890     HRESULT hr = pConsole->COMGETTER(Display)(pDisplay.asOutParam());
    891     if (FAILED(hr))
    892         return hr;
     876    HRESULT hrc = pConsole->COMGETTER(Display)(pDisplay.asOutParam());
     877    if (FAILED(hrc))
     878        return hrc;
    893879
    894880    ULONG dummy;
    895881    LONG xShift, yShift;
    896882    GuestMonitorStatus_T monitorStatus;
    897     hr = pDisplay->GetScreenResolution(uScreenId, &dummy, &dummy, &dummy,
    898                                        &xShift, &yShift, &monitorStatus);
    899     if (FAILED(hr))
    900         return hr;
     883    hrc = pDisplay->GetScreenResolution(uScreenId, &dummy, &dummy, &dummy, &xShift, &yShift, &monitorStatus);
     884    if (FAILED(hrc))
     885        return hrc;
    901886
    902887    if (puX)
     
    15431528    LogRel2(("DnD: Cancelling operation on guest ...\n"));
    15441529
    1545     int rc = GuestDnDInst()->hostCall(Msg.getType(), Msg.getCount(), Msg.getParms());
    1546     if (RT_FAILURE(rc))
    1547         LogRel(("DnD: Cancelling operation on guest failed with %Rrc\n", rc));
    1548 
    1549     return rc;
     1530    int vrc = GuestDnDInst()->hostCall(Msg.getType(), Msg.getCount(), Msg.getParms());
     1531    if (RT_FAILURE(vrc))
     1532        LogRel(("DnD: Cancelling operation on guest failed with %Rrc\n", vrc));
     1533
     1534    return vrc;
    15501535}
    15511536
     
    15791564    LogRel2(("DnD: Transfer %RU8%% complete\n", uPercent));
    15801565
    1581     int rc = pState->setProgress(uPercent,
    1582                                    pData->isComplete()
    1583                                  ? DND_PROGRESS_COMPLETE
    1584                                  : DND_PROGRESS_RUNNING);
    1585     LogFlowFuncLeaveRC(rc);
    1586     return rc;
     1566    int vrc = pState->setProgress(uPercent, pData->isComplete() ? DND_PROGRESS_COMPLETE : DND_PROGRESS_RUNNING);
     1567    LogFlowFuncLeaveRC(vrc);
     1568    return vrc;
    15871569}
    15881570
     
    16001582    AssertPtrReturn(pState, VERR_INVALID_POINTER);
    16011583
    1602     int rc;
     1584    int vrc;
    16031585
    16041586    LogFlowFunc(("msTimeout=%RU32\n", msTimeout));
     
    16121594         * respond, do busy waiting here.
    16131595         */
    1614         rc = pEvent->Wait(500 /* ms */);
    1615         if (RT_SUCCESS(rc))
    1616         {
    1617             rc = pEvent->Result();
    1618             LogFlowFunc(("Callback done, result is %Rrc\n", rc));
    1619             break;
    1620         }
    1621         else if (rc == VERR_TIMEOUT) /* Continue waiting. */
    1622             rc = VINF_SUCCESS;
     1596        vrc = pEvent->Wait(500 /* ms */);
     1597        if (RT_SUCCESS(vrc))
     1598        {
     1599            vrc = pEvent->Result();
     1600            LogFlowFunc(("Callback done, result is %Rrc\n", vrc));
     1601            break;
     1602        }
     1603        if (vrc == VERR_TIMEOUT) /* Continue waiting. */
     1604            vrc = VINF_SUCCESS;
    16231605
    16241606        if (   msTimeout != RT_INDEFINITE_WAIT
    16251607            && RTTimeMilliTS() - tsStart > msTimeout)
    16261608        {
    1627             rc = VERR_TIMEOUT;
     1609            vrc = VERR_TIMEOUT;
    16281610            LogRel2(("DnD: Error: Guest did not respond within time\n"));
    16291611        }
     
    16311613        {
    16321614            LogRel2(("DnD: Operation was canceled by user\n"));
    1633             rc = VERR_CANCELLED;
    1634         }
    1635 
    1636     } while (RT_SUCCESS(rc));
    1637 
    1638     LogFlowFuncLeaveRC(rc);
    1639     return rc;
    1640 }
     1615            vrc = VERR_CANCELLED;
     1616        }
     1617
     1618    } while (RT_SUCCESS(vrc));
     1619
     1620    LogFlowFuncLeaveRC(vrc);
     1621    return vrc;
     1622}
     1623
    16411624#endif /* VBOX_WITH_DRAG_AND_DROP */
    16421625
  • trunk/src/VBox/Main/src-client/GuestDnDSourceImpl.cpp

    r98262 r98273  
    392392    pState->set(VBOXDNDSTATE_UNKNOWN);
    393393
    394     LogFlowFunc(("hr=%Rhrc\n", hrc));
     394    LogFlowFunc(("hrc=%Rhrc\n", hrc));
    395395    return hrc;
    396396#endif /* VBOX_WITH_DRAG_AND_DROP */
     
    437437    GuestDnDState *pState = GuestDnDInst()->getState();
    438438    AssertPtr(pState);
    439     HRESULT hr = pState->resetProgress(m_pGuest, tr("Dropping data to host"));
    440     if (FAILED(hr))
    441         return hr;
     439    HRESULT hrc = pState->resetProgress(m_pGuest, tr("Dropping data to host"));
     440    if (FAILED(hrc))
     441        return hrc;
    442442
    443443    GuestDnDRecvDataTask *pTask = NULL;
     
    458458            delete pTask;
    459459            LogRel2(("DnD: Receive data task failed to initialize\n"));
    460             throw hr = E_FAIL;
     460            throw hrc = E_FAIL;
    461461        }
    462462
     
    466466        /* This function delete pTask in case of exceptions,
    467467         * so there is no need in the call of delete operator. */
    468         hr = pTask->createThreadWithType(RTTHREADTYPE_MAIN_WORKER);
     468        hrc = pTask->createThreadWithType(RTTHREADTYPE_MAIN_WORKER);
    469469        pTask = NULL;  /* Note: pTask is now owned by the worker thread. */
    470470    }
    471471    catch (std::bad_alloc &)
    472472    {
    473         hr = E_OUTOFMEMORY;
     473        hrc = E_OUTOFMEMORY;
    474474    }
    475475    catch (...)
    476476    {
    477477        LogRel2(("DnD: Could not create thread for data receiving task\n"));
    478         hr = E_FAIL;
    479     }
    480 
    481     if (SUCCEEDED(hr))
     478        hrc = E_FAIL;
     479    }
     480
     481    if (SUCCEEDED(hrc))
    482482    {
    483483        /* Register ourselves at the DnD manager. */
    484484        GuestDnDInst()->registerSource(this);
    485485
    486         hr = pState->queryProgressTo(aProgress.asOutParam());
    487         ComAssertComRC(hr);
    488 
     486        hrc = pState->queryProgressTo(aProgress.asOutParam());
     487        ComAssertComRC(hrc);
    489488    }
    490489    else
    491         hr = i_setErrorAndReset(tr("Starting thread for GuestDnDSource failed (%Rhrc)"), hr);
    492 
    493     LogFlowFunc(("Returning hr=%Rhrc\n", hr));
    494     return hr;
     490        hrc = i_setErrorAndReset(tr("Starting thread for GuestDnDSource failed (%Rhrc)"), hrc);
     491
     492    LogFlowFunc(("Returning hrc=%Rhrc\n", hrc));
     493    return hrc;
    495494#endif /* VBOX_WITH_DRAG_AND_DROP */
    496495}
     
    511510        return setError(E_FAIL, tr("Current drop operation to host still in progress"));
    512511
    513     HRESULT hr = S_OK;
     512    HRESULT hrc = S_OK;
    514513
    515514    try
     
    529528            char  *pszBuf = NULL;
    530529            size_t cbBuf  = 0;
    531             int rc = DnDTransferListGetRootsEx(&pCtx->Transfer.List, DNDTRANSFERLISTFMT_URI,
    532                                                pcszDropDirAbs, DND_PATH_SEPARATOR_STR, &pszBuf, &cbBuf);
    533             if (RT_SUCCESS(rc))
     530            int vrc = DnDTransferListGetRootsEx(&pCtx->Transfer.List, DNDTRANSFERLISTFMT_URI,
     531                                                pcszDropDirAbs, DND_PATH_SEPARATOR_STR, &pszBuf, &cbBuf);
     532            if (RT_SUCCESS(vrc))
    534533            {
    535534                Assert(cbBuf);
     
    541540            }
    542541            else
    543                 LogRel(("DnD: Unable to build source root list, rc=%Rrc\n", rc));
     542                LogRel(("DnD: Unable to build source root list, vrc=%Rrc\n", vrc));
    544543        }
    545544        else /* Raw data. */
     
    557556    catch (std::bad_alloc &)
    558557    {
    559         hr = E_OUTOFMEMORY;
    560     }
    561 
    562     LogFlowFunc(("Returning hr=%Rhrc\n", hr));
    563     return hr;
     558        hrc = E_OUTOFMEMORY;
     559    }
     560
     561    LogFlowFunc(("Returning hrc=%Rhrc\n", hrc));
     562    return hrc;
    564563#endif /* VBOX_WITH_DRAG_AND_DROP */
    565564}
     
    719718    AssertPtrReturn(pSndData, VERR_INVALID_POINTER);
    720719
    721     int rc = VINF_SUCCESS;
     720    int vrc = VINF_SUCCESS;
    722721
    723722    try
     
    756755        {
    757756            AssertMsgFailed(("Incoming data size invalid: cbData=%zu, cbTotal=%zu\n", cbData, cbTotalAnnounced));
    758             rc = VERR_INVALID_PARAMETER;
     757            vrc = VERR_INVALID_PARAMETER;
    759758        }
    760759        else if (   cbTotalAnnounced == 0
     
    762761        {
    763762            AssertMsgFailed(("cbTotal (%zu) is smaller than cbMeta (%zu)\n", cbTotalAnnounced, cbMetaAnnounced));
    764             rc = VERR_INVALID_PARAMETER;
    765         }
    766 
    767         if (RT_FAILURE(rc))
    768             return rc;
     763            vrc = VERR_INVALID_PARAMETER;
     764        }
     765
     766        if (RT_FAILURE(vrc))
     767            return vrc;
    769768
    770769        AssertReturn(cbData <= mData.mcbBlockSize, VERR_BUFFER_OVERFLOW);
     
    788787            if (DnDMIMENeedsDropDir(pCtx->strFmtRecv.c_str(), pCtx->strFmtRecv.length()))
    789788            {
    790                 rc = DnDTransferListInitEx(&pTransfer->List,
    791                                            DnDDroppedFilesGetDirAbs(&pTransfer->DroppedFiles), DNDTRANSFERLISTFMT_NATIVE);
    792                 if (RT_SUCCESS(rc))
    793                     rc = DnDTransferListAppendRootsFromBuffer(&pTransfer->List, DNDTRANSFERLISTFMT_URI,
    794                                                               (const char *)pCtx->Meta.pvData, pCtx->Meta.cbData, DND_PATH_SEPARATOR_STR,
    795                                                               DNDTRANSFERLIST_FLAGS_NONE);
     789                vrc = DnDTransferListInitEx(&pTransfer->List,
     790                                            DnDDroppedFilesGetDirAbs(&pTransfer->DroppedFiles), DNDTRANSFERLISTFMT_NATIVE);
     791                if (RT_SUCCESS(vrc))
     792                    vrc = DnDTransferListAppendRootsFromBuffer(&pTransfer->List, DNDTRANSFERLISTFMT_URI,
     793                                                               (const char *)pCtx->Meta.pvData, pCtx->Meta.cbData,
     794                                                               DND_PATH_SEPARATOR_STR, DNDTRANSFERLIST_FLAGS_NONE);
    796795                /* Validation. */
    797                 if (RT_SUCCESS(rc))
     796                if (RT_SUCCESS(vrc))
    798797                {
    799798                    uint64_t cRoots = DnDTransferListGetRootCount(&pTransfer->List);
     
    806805                        LogRel(("DnD: Number of root entries invalid / mismatch: Got %RU64, expected %RU64\n",
    807806                                cRoots, pTransfer->cObjToProcess));
    808                         rc = VERR_INVALID_PARAMETER;
     807                        vrc = VERR_INVALID_PARAMETER;
    809808                    }
    810809                }
    811810
    812                 if (RT_SUCCESS(rc))
     811                if (RT_SUCCESS(vrc))
    813812                {
    814813                    /* Update our process with the data we already received. */
    815                     rc = updateProgress(pCtx, pCtx->pState, cbMetaAnnounced);
    816                     AssertRC(rc);
     814                    vrc = updateProgress(pCtx, pCtx->pState, cbMetaAnnounced);
     815                    AssertRC(vrc);
    817816                }
    818817
    819                 if (RT_FAILURE(rc))
    820                     LogRel(("DnD: Error building root entry list, rc=%Rrc\n", rc));
     818                if (RT_FAILURE(vrc))
     819                    LogRel(("DnD: Error building root entry list, vrc=%Rrc\n", vrc));
    821820            }
    822821            else /* Raw data. */
    823822            {
    824                 rc = updateProgress(pCtx, pCtx->pState, cbData);
    825                 AssertRC(rc);
     823                vrc = updateProgress(pCtx, pCtx->pState, cbData);
     824                AssertRC(vrc);
    826825            }
    827826
    828             if (RT_FAILURE(rc))
    829                 LogRel(("DnD: Error receiving meta data, rc=%Rrc\n", rc));
     827            if (RT_FAILURE(vrc))
     828                LogRel(("DnD: Error receiving meta data, vrc=%Rrc\n", vrc));
    830829        }
    831830    }
    832831    catch (std::bad_alloc &)
    833832    {
    834         rc = VERR_NO_MEMORY;
    835     }
    836 
    837     LogFlowFuncLeaveRC(rc);
    838     return rc;
     833        vrc = VERR_NO_MEMORY;
     834    }
     835
     836    LogFlowFuncLeaveRC(vrc);
     837    return vrc;
    839838}
    840839
     
    851850    const PDNDDROPPEDFILES   pDF  = &pCtx->Transfer.DroppedFiles;
    852851
    853     int rc = DnDTransferObjectInitEx(pObj, DNDTRANSFEROBJTYPE_DIRECTORY,
    854                                      DnDDroppedFilesGetDirAbs(pDF), pszPath);
    855     if (RT_SUCCESS(rc))
     852    int vrc = DnDTransferObjectInitEx(pObj, DNDTRANSFEROBJTYPE_DIRECTORY, DnDDroppedFilesGetDirAbs(pDF), pszPath);
     853    if (RT_SUCCESS(vrc))
    856854    {
    857855        const char *pcszPathAbs = DnDTransferObjectGetSourcePath(pObj);
    858856        AssertPtr(pcszPathAbs);
    859857
    860         rc = RTDirCreateFullPath(pcszPathAbs, fMode);
    861         if (RT_SUCCESS(rc))
     858        vrc = RTDirCreateFullPath(pcszPathAbs, fMode);
     859        if (RT_SUCCESS(vrc))
    862860        {
    863861            pCtx->Transfer.cObjProcessed++;
    864862            if (pCtx->Transfer.cObjProcessed <= pCtx->Transfer.cObjToProcess)
    865             {
    866                 rc = DnDDroppedFilesAddDir(pDF, pcszPathAbs);
    867             }
     863                vrc = DnDDroppedFilesAddDir(pDF, pcszPathAbs);
    868864            else
    869                 rc = VERR_TOO_MUCH_DATA;
     865                vrc = VERR_TOO_MUCH_DATA;
    870866
    871867            DnDTransferObjectDestroy(pObj);
    872868
    873             if (RT_FAILURE(rc))
     869            if (RT_FAILURE(vrc))
    874870                LogRel2(("DnD: Created guest directory '%s' on host\n", pcszPathAbs));
    875871        }
    876872        else
    877             LogRel(("DnD: Error creating guest directory '%s' on host, rc=%Rrc\n", pcszPathAbs, rc));
    878     }
    879 
    880     if (RT_FAILURE(rc))
    881         LogRel(("DnD: Receiving guest directory '%s' failed with rc=%Rrc\n", pszPath, rc));
    882 
    883     LogFlowFuncLeaveRC(rc);
    884     return rc;
     873            LogRel(("DnD: Error creating guest directory '%s' on host, vrc=%Rrc\n", pcszPathAbs, vrc));
     874    }
     875
     876    if (RT_FAILURE(vrc))
     877        LogRel(("DnD: Receiving guest directory '%s' failed with vrc=%Rrc\n", pszPath, vrc));
     878
     879    LogFlowFuncLeaveRC(vrc);
     880    return vrc;
    885881}
    886882
     
    915911                    ("Data transfer already complete, bailing out\n"), VERR_INVALID_PARAMETER);
    916912
    917     int rc = VINF_SUCCESS;
     913    int vrc = VINF_SUCCESS;
    918914
    919915    do
     
    925921        {
    926922            AssertMsgFailed(("Object '%s' not complete yet\n", DnDTransferObjectGetSourcePath(pObj)));
    927             rc = VERR_WRONG_ORDER;
     923            vrc = VERR_WRONG_ORDER;
    928924            break;
    929925        }
     
    931927        const PDNDDROPPEDFILES pDF = &pCtx->Transfer.DroppedFiles;
    932928
    933         rc = DnDTransferObjectInitEx(pObj, DNDTRANSFEROBJTYPE_FILE, DnDDroppedFilesGetDirAbs(pDF), pszPath);
    934         AssertRCBreak(rc);
     929        vrc = DnDTransferObjectInitEx(pObj, DNDTRANSFEROBJTYPE_FILE, DnDDroppedFilesGetDirAbs(pDF), pszPath);
     930        AssertRCBreak(vrc);
    935931
    936932        const char *pcszSource = DnDTransferObjectGetSourcePath(pObj);
     
    938934
    939935        /** @todo Add sparse file support based on fFlags? (Use Open(..., fFlags | SPARSE). */
    940         rc = DnDTransferObjectOpen(pObj, RTFILE_O_CREATE_REPLACE | RTFILE_O_WRITE | RTFILE_O_DENY_WRITE,
     936        vrc = DnDTransferObjectOpen(pObj, RTFILE_O_CREATE_REPLACE | RTFILE_O_WRITE | RTFILE_O_DENY_WRITE,
    941937                                   (fMode & RTFS_UNIX_MASK) | RTFS_UNIX_IRUSR | RTFS_UNIX_IWUSR, DNDTRANSFEROBJECT_FLAGS_NONE);
    942         if (RT_FAILURE(rc))
    943         {
    944             LogRel(("DnD: Error opening/creating guest file '%s' on host, rc=%Rrc\n", pcszSource, rc));
     938        if (RT_FAILURE(vrc))
     939        {
     940            LogRel(("DnD: Error opening/creating guest file '%s' on host, vrc=%Rrc\n", pcszSource, vrc));
    945941            break;
    946942        }
     
    948944        /* Note: Protocol v1 does not send any file sizes, so always 0. */
    949945        if (m_pState->m_uProtocolVersion >= 2)
    950             rc = DnDTransferObjectSetSize(pObj, cbSize);
     946            vrc = DnDTransferObjectSetSize(pObj, cbSize);
    951947
    952948        /** @todo Unescape path before printing. */
     
    964960            {
    965961                /* Add for having a proper rollback. */
    966                 rc = DnDDroppedFilesAddFile(pDF, pcszSource);
     962                vrc = DnDDroppedFilesAddFile(pDF, pcszSource);
    967963            }
    968964            else
    969                 rc = VERR_TOO_MUCH_DATA;
     965                vrc = VERR_TOO_MUCH_DATA;
    970966
    971967            DnDTransferObjectDestroy(pObj);
     
    974970    } while (0);
    975971
    976     if (RT_FAILURE(rc))
    977         LogRel(("DnD: Error receiving guest file header, rc=%Rrc\n", rc));
    978 
    979     LogFlowFuncLeaveRC(rc);
    980     return rc;
     972    if (RT_FAILURE(vrc))
     973        LogRel(("DnD: Error receiving guest file header, vrc=%Rrc\n", vrc));
     974
     975    LogFlowFuncLeaveRC(vrc);
     976    return vrc;
    981977}
    982978
     
    995991    AssertReturn(cbData, VERR_INVALID_PARAMETER);
    996992
    997     int rc = VINF_SUCCESS;
     993    int vrc = VINF_SUCCESS;
    998994
    999995    LogFlowFunc(("pvData=%p, cbData=%RU32, cbBlockSize=%RU32\n", pvData, cbData, mData.mcbBlockSize));
     
    10181014
    10191015        uint32_t cbWritten;
    1020         rc = DnDTransferObjectWrite(pObj, pvData, cbData, &cbWritten);
    1021         if (RT_FAILURE(rc))
    1022             LogRel(("DnD: Error writing guest file data for '%s', rc=%Rrc\n", pcszSource, rc));
     1016        vrc = DnDTransferObjectWrite(pObj, pvData, cbData, &cbWritten);
     1017        if (RT_FAILURE(vrc))
     1018            LogRel(("DnD: Error writing guest file data for '%s', vrc=%Rrc\n", pcszSource, vrc));
    10231019
    10241020        Assert(cbWritten <= cbData);
     
    10271023            LogRel(("DnD: Only written %RU32 of %RU32 bytes of guest file '%s' -- disk full?\n",
    10281024                    cbWritten, cbData, pcszSource));
    1029             rc = VERR_IO_GEN_FAILURE; /** @todo Find a better rc. */
    1030             break;
    1031         }
    1032 
    1033         rc = updateProgress(pCtx, pCtx->pState, cbWritten);
    1034         AssertRCBreak(rc);
     1025            vrc = VERR_IO_GEN_FAILURE; /** @todo Find a better vrc. */
     1026            break;
     1027        }
     1028
     1029        vrc = updateProgress(pCtx, pCtx->pState, cbWritten);
     1030        AssertRCBreak(vrc);
    10351031
    10361032        if (DnDTransferObjectIsComplete(pObj))
     
    10401036            pCtx->Transfer.cObjProcessed++;
    10411037            if (pCtx->Transfer.cObjProcessed > pCtx->Transfer.cObjToProcess)
    1042                 rc = VERR_TOO_MUCH_DATA;
     1038                vrc = VERR_TOO_MUCH_DATA;
    10431039
    10441040            DnDTransferObjectDestroy(pObj);
     
    10471043    } while (0);
    10481044
    1049     if (RT_FAILURE(rc))
    1050         LogRel(("DnD: Error receiving guest file data, rc=%Rrc\n", rc));
    1051 
    1052     LogFlowFuncLeaveRC(rc);
    1053     return rc;
     1045    if (RT_FAILURE(vrc))
     1046        LogRel(("DnD: Error receiving guest file data, vrc=%Rrc\n", vrc));
     1047
     1048    LogFlowFuncLeaveRC(vrc);
     1049    return vrc;
    10541050}
    10551051#endif /* VBOX_WITH_DRAG_AND_DROP_GH */
     
    11081104    }
    11091105
    1110     int rc = VINF_SUCCESS;
     1106    int vrc = VINF_SUCCESS;
    11111107
    11121108    if (fFoundFormat)
     
    11211117        bool fURIData = DnDMIMENeedsDropDir(pCtx->strFmtRecv.c_str(), pCtx->strFmtRecv.length());
    11221118        if (fURIData)
    1123         {
    1124             rc = i_receiveTransferData(pCtx, msTimeout);
    1125         }
     1119            vrc = i_receiveTransferData(pCtx, msTimeout);
    11261120        else
    1127         {
    1128             rc = i_receiveRawData(pCtx, msTimeout);
    1129         }
     1121            vrc = i_receiveRawData(pCtx, msTimeout);
    11301122    }
    11311123    else /* Just inform the user (if verbose release logging is enabled). */
     
    11361128            LogRel(("DnD:\tFormat #%zu: %s\n", i, pCtx->lstFmtOffered.at(i).c_str()));
    11371129
    1138         rc = VERR_NOT_SUPPORTED;
    1139     }
    1140 
    1141     if (RT_FAILURE(rc))
    1142     {
    1143         LogRel(("DnD: Receiving data from guest failed with %Rrc\n", rc));
     1130        vrc = VERR_NOT_SUPPORTED;
     1131    }
     1132
     1133    if (RT_FAILURE(vrc))
     1134    {
     1135        LogRel(("DnD: Receiving data from guest failed with %Rrc\n", vrc));
    11441136
    11451137        /* Let the guest side know first. */
     
    11501142    }
    11511143
    1152     LogFlowFuncLeaveRC(rc);
    1153     return rc;
     1144    LogFlowFuncLeaveRC(vrc);
     1145    return vrc;
    11541146}
    11551147
     
    11651157    AssertPtrReturn(pCtx, VERR_INVALID_POINTER);
    11661158
    1167     int rc;
     1159    int vrc;
    11681160
    11691161    LogFlowFuncEnter();
     
    11761168        return VERR_INVALID_POINTER;
    11771169
    1178 #define REGISTER_CALLBACK(x) \
    1179     do {                                                             \
    1180         rc = pState->setCallback(x, i_receiveRawDataCallback, pCtx); \
    1181         if (RT_FAILURE(rc))                                          \
    1182             return rc;                                               \
     1170#define REGISTER_CALLBACK(x) do { \
     1171        vrc = pState->setCallback(x, i_receiveRawDataCallback, pCtx); \
     1172        if (RT_FAILURE(vrc)) \
     1173            return vrc; \
    11831174    } while (0)
    11841175
    1185 #define UNREGISTER_CALLBACK(x)                                      \
    1186     do {                                                            \
    1187         int rc2 = pState->setCallback(x, NULL);                     \
    1188         AssertRC(rc2);                                              \
     1176#define UNREGISTER_CALLBACK(x) do { \
     1177        int vrc2 = pState->setCallback(x, NULL); \
     1178        AssertRC(vrc2); \
    11891179    } while (0)
    11901180
     
    12141204        /* Make the initial call to the guest by telling that we initiated the "dropped" event on
    12151205         * the host and therefore now waiting for the actual raw data. */
    1216         rc = pInst->hostCall(Msg.getType(), Msg.getCount(), Msg.getParms());
    1217         if (RT_SUCCESS(rc))
    1218         {
    1219             rc = waitForEvent(&pCtx->EventCallback, pCtx->pState, msTimeout);
    1220             if (RT_SUCCESS(rc))
    1221                 rc = pCtx->pState->setProgress(100, DND_PROGRESS_COMPLETE, VINF_SUCCESS);
     1206        vrc = pInst->hostCall(Msg.getType(), Msg.getCount(), Msg.getParms());
     1207        if (RT_SUCCESS(vrc))
     1208        {
     1209            vrc = waitForEvent(&pCtx->EventCallback, pCtx->pState, msTimeout);
     1210            if (RT_SUCCESS(vrc))
     1211                vrc = pCtx->pState->setProgress(100, DND_PROGRESS_COMPLETE, VINF_SUCCESS);
    12221212        }
    12231213
     
    12371227#undef UNREGISTER_CALLBACK
    12381228
    1239     if (RT_FAILURE(rc))
    1240     {
    1241         if (rc == VERR_CANCELLED) /* Transfer was cancelled by the host. */
     1229    if (RT_FAILURE(vrc))
     1230    {
     1231        if (vrc == VERR_CANCELLED) /* Transfer was cancelled by the host. */
    12421232        {
    12431233            /*
     
    12461236             * host side never must depend on anything from the guest.
    12471237             */
    1248             int rc2 = sendCancel();
    1249             AssertRC(rc2);
    1250 
    1251             rc2 = pCtx->pState->setProgress(100, DND_PROGRESS_CANCELLED);
    1252             AssertRC(rc2);
    1253         }
    1254         else if (rc != VERR_DND_GUEST_ERROR) /* Guest-side error are already handled in the callback. */
    1255         {
    1256             int rc2 = pCtx->pState->setProgress(100, DND_PROGRESS_ERROR,
    1257                                                 rc, GuestDnDSource::i_hostErrorToString(rc));
    1258             AssertRC(rc2);
    1259         }
    1260 
    1261         rc = VINF_SUCCESS; /* The error was handled by the setProgress() calls above. */
    1262     }
    1263 
    1264     LogFlowFuncLeaveRC(rc);
    1265     return rc;
     1238            int vrc2 = sendCancel();
     1239            AssertRC(vrc2);
     1240
     1241            vrc2 = pCtx->pState->setProgress(100, DND_PROGRESS_CANCELLED);
     1242            AssertRC(vrc2);
     1243        }
     1244        else if (vrc != VERR_DND_GUEST_ERROR) /* Guest-side error are already handled in the callback. */
     1245        {
     1246            int vrc2 = pCtx->pState->setProgress(100, DND_PROGRESS_ERROR,
     1247                                                vrc, GuestDnDSource::i_hostErrorToString(vrc));
     1248            AssertRC(vrc2);
     1249        }
     1250
     1251        vrc = VINF_SUCCESS; /* The error was handled by the setProgress() calls above. */
     1252    }
     1253
     1254    LogFlowFuncLeaveRC(vrc);
     1255    return vrc;
    12661256}
    12671257
     
    12771267    AssertPtrReturn(pCtx, VERR_INVALID_POINTER);
    12781268
    1279     int rc;
     1269    int vrc;
    12801270
    12811271    LogFlowFuncEnter();
     
    12881278        return VERR_INVALID_POINTER;
    12891279
    1290 #define REGISTER_CALLBACK(x)                                              \
    1291     do {                                                                  \
    1292         rc = pState->setCallback(x, i_receiveTransferDataCallback, pCtx); \
    1293         if (RT_FAILURE(rc))                                               \
    1294             return rc;                                                    \
     1280#define REGISTER_CALLBACK(x) do { \
     1281        vrc = pState->setCallback(x, i_receiveTransferDataCallback, pCtx); \
     1282        if (RT_FAILURE(vrc)) \
     1283            return vrc; \
    12951284    } while (0)
    12961285
    1297 #define UNREGISTER_CALLBACK(x)                                       \
    1298     do {                                                             \
    1299         int rc2 = pState->setCallback(x, NULL);                      \
    1300         AssertRC(rc2);                                               \
     1286#define UNREGISTER_CALLBACK(x) do {  \
     1287        int vrc2 = pState->setCallback(x, NULL);  \
     1288        AssertRC(vrc2); \
    13011289    } while (0)
    13021290
     
    13201308    do
    13211309    {
    1322         rc = DnDDroppedFilesOpenTemp(pDF, 0 /* fFlags */);
    1323         if (RT_FAILURE(rc))
    1324         {
    1325             LogRel(("DnD: Opening dropped files directory '%s' on the host failed with rc=%Rrc\n",
    1326                     DnDDroppedFilesGetDirAbs(pDF), rc));
     1310        vrc = DnDDroppedFilesOpenTemp(pDF, 0 /* fFlags */);
     1311        if (RT_FAILURE(vrc))
     1312        {
     1313            LogRel(("DnD: Opening dropped files directory '%s' on the host failed with vrc=%Rrc\n",
     1314                    DnDDroppedFilesGetDirAbs(pDF), vrc));
    13271315            break;
    13281316        }
     
    13411329        /* Make the initial call to the guest by telling that we initiated the "dropped" event on
    13421330         * the host and therefore now waiting for the actual URI data. */
    1343         rc = pInst->hostCall(Msg.getType(), Msg.getCount(), Msg.getParms());
    1344         if (RT_SUCCESS(rc))
     1331        vrc = pInst->hostCall(Msg.getType(), Msg.getCount(), Msg.getParms());
     1332        if (RT_SUCCESS(vrc))
    13451333        {
    13461334            LogFlowFunc(("Waiting ...\n"));
    13471335
    1348             rc = waitForEvent(&pCtx->EventCallback, pCtx->pState, msTimeout);
    1349             if (RT_SUCCESS(rc))
    1350                 rc = pCtx->pState->setProgress(100, DND_PROGRESS_COMPLETE, VINF_SUCCESS);
    1351 
    1352             LogFlowFunc(("Waiting ended with rc=%Rrc\n", rc));
     1336            vrc = waitForEvent(&pCtx->EventCallback, pCtx->pState, msTimeout);
     1337            if (RT_SUCCESS(vrc))
     1338                vrc = pCtx->pState->setProgress(100, DND_PROGRESS_COMPLETE, VINF_SUCCESS);
     1339
     1340            LogFlowFunc(("Waiting ended with vrc=%Rrc\n", vrc));
    13531341        }
    13541342
     
    13701358#undef UNREGISTER_CALLBACK
    13711359
    1372     if (RT_FAILURE(rc))
    1373     {
    1374         int rc2 = DnDDroppedFilesRollback(pDF);
    1375         if (RT_FAILURE(rc2))
     1360    if (RT_FAILURE(vrc))
     1361    {
     1362        int vrc2 = DnDDroppedFilesRollback(pDF);
     1363        if (RT_FAILURE(vrc2))
    13761364            LogRel(("DnD: Deleting left over temporary files failed (%Rrc), please remove directory '%s' manually\n",
    1377                     rc2, DnDDroppedFilesGetDirAbs(pDF)));
    1378 
    1379         if (rc == VERR_CANCELLED)
     1365                    vrc2, DnDDroppedFilesGetDirAbs(pDF)));
     1366
     1367        if (vrc == VERR_CANCELLED)
    13801368        {
    13811369            /*
     
    13841372             * host side never must depend on anything from the guest.
    13851373             */
    1386             rc2 = sendCancel();
    1387             AssertRC(rc2);
    1388 
    1389             rc2 = pCtx->pState->setProgress(100, DND_PROGRESS_CANCELLED);
    1390             AssertRC(rc2);
     1374            vrc2 = sendCancel();
     1375            AssertRC(vrc2);
     1376
     1377            vrc2 = pCtx->pState->setProgress(100, DND_PROGRESS_CANCELLED);
     1378            AssertRC(vrc2);
    13911379
    13921380            /* Cancelling is not an error, just set success here. */
    1393             rc  = VINF_SUCCESS;
    1394         }
    1395         else if (rc != VERR_DND_GUEST_ERROR) /* Guest-side error are already handled in the callback. */
    1396         {
    1397             rc2 = pCtx->pState->setProgress(100, DND_PROGRESS_ERROR,
    1398                                             rc, GuestDnDSource::i_hostErrorToString(rc));
    1399             AssertRC(rc2);
     1381            vrc  = VINF_SUCCESS;
     1382        }
     1383        else if (vrc != VERR_DND_GUEST_ERROR) /* Guest-side error are already handled in the callback. */
     1384        {
     1385            vrc2 = pCtx->pState->setProgress(100, DND_PROGRESS_ERROR, vrc, GuestDnDSource::i_hostErrorToString(vrc2));
     1386            AssertRC(vrc2);
    14001387        }
    14011388    }
     
    14031390    DnDDroppedFilesClose(pDF);
    14041391
    1405     LogFlowFuncLeaveRC(rc);
    1406     return rc;
     1392    LogFlowFuncLeaveRC(vrc);
     1393    return vrc;
    14071394}
    14081395
     
    14271414    LogFlowFunc(("pThis=%p, uMsg=%RU32\n", pThis, uMsg));
    14281415
    1429     int rc = VINF_SUCCESS;
    1430 
    1431     int rcCallback = VINF_SUCCESS; /* rc for the callback. */
     1416    int vrc = VINF_SUCCESS;
     1417
     1418    int vrcCallback = VINF_SUCCESS; /* vrc for the callback. */
    14321419    bool fNotify   = false;
    14331420
     
    14391426
    14401427        case GUEST_DND_FN_DISCONNECT:
    1441             rc = VERR_CANCELLED;
     1428            vrc = VERR_CANCELLED;
    14421429            break;
    14431430
     
    14501437            AssertReturn(CB_MAGIC_DND_GH_SND_DATA_HDR == pCBData->hdr.uMagic, VERR_INVALID_PARAMETER);
    14511438
    1452             rc = pThis->i_onReceiveDataHdr(pCtx, &pCBData->data);
     1439            vrc = pThis->i_onReceiveDataHdr(pCtx, &pCBData->data);
    14531440            break;
    14541441        }
     
    14601447            AssertReturn(CB_MAGIC_DND_GH_SND_DATA == pCBData->hdr.uMagic, VERR_INVALID_PARAMETER);
    14611448
    1462             rc = pThis->i_onReceiveData(pCtx, &pCBData->data);
     1449            vrc = pThis->i_onReceiveData(pCtx, &pCBData->data);
    14631450            break;
    14641451        }
     
    14781465            }
    14791466            else if (pCBData->rc == VERR_WRONG_ORDER)
    1480             {
    1481                 rc = pCtx->pState->setProgress(100, DND_PROGRESS_CANCELLED);
    1482             }
     1467                vrc = pCtx->pState->setProgress(100, DND_PROGRESS_CANCELLED);
    14831468            else
    1484                 rc = pCtx->pState->setProgress(100, DND_PROGRESS_ERROR, pCBData->rc,
    1485                                                GuestDnDSource::i_guestErrorToString(pCBData->rc));
     1469                vrc = pCtx->pState->setProgress(100, DND_PROGRESS_ERROR, pCBData->rc,
     1470                                                GuestDnDSource::i_guestErrorToString(pCBData->rc));
    14861471
    14871472            LogRel3(("DnD: Guest reported data transfer error: %Rrc\n", pCBData->rc));
    14881473
    1489             if (RT_SUCCESS(rc))
    1490                 rcCallback = VERR_DND_GUEST_ERROR;
     1474            if (RT_SUCCESS(vrc))
     1475                vrcCallback = VERR_DND_GUEST_ERROR;
    14911476            break;
    14921477        }
    14931478#endif /* VBOX_WITH_DRAG_AND_DROP_GH */
    14941479        default:
    1495             rc = VERR_NOT_SUPPORTED;
    1496             break;
    1497     }
    1498 
    1499     if (   RT_FAILURE(rc)
    1500         || RT_FAILURE(rcCallback))
     1480            vrc = VERR_NOT_SUPPORTED;
     1481            break;
     1482    }
     1483
     1484    if (   RT_FAILURE(vrc)
     1485        || RT_FAILURE(vrcCallback))
    15011486    {
    15021487        fNotify = true;
    1503         if (RT_SUCCESS(rcCallback))
    1504             rcCallback = rc;
    1505     }
    1506 
    1507     if (RT_FAILURE(rc))
    1508     {
    1509         switch (rc)
     1488        if (RT_SUCCESS(vrcCallback))
     1489            vrcCallback = vrc;
     1490    }
     1491
     1492    if (RT_FAILURE(vrc))
     1493    {
     1494        switch (vrc)
    15101495        {
    15111496            case VERR_NO_DATA:
     
    15181503
    15191504            default:
    1520                 LogRel(("DnD: Error %Rrc occurred, aborting data transfer to host\n", rc));
     1505                LogRel(("DnD: Error %Rrc occurred, aborting data transfer to host\n", vrc));
    15211506                break;
    15221507        }
     
    15241509        /* Unregister this callback. */
    15251510        AssertPtr(pCtx->pState);
    1526         int rc2 = pCtx->pState->setCallback(uMsg, NULL /* PFNGUESTDNDCALLBACK */);
    1527         AssertRC(rc2);
     1511        int vrc2 = pCtx->pState->setCallback(uMsg, NULL /* PFNGUESTDNDCALLBACK */);
     1512        AssertRC(vrc2);
    15281513    }
    15291514
     
    15321517        fNotify = true;
    15331518
    1534     LogFlowFunc(("cbProcessed=%RU64, cbExtra=%RU64, fNotify=%RTbool, rcCallback=%Rrc, rc=%Rrc\n",
    1535                  pCtx->cbProcessed, pCtx->cbExtra, fNotify, rcCallback, rc));
     1519    LogFlowFunc(("cbProcessed=%RU64, cbExtra=%RU64, fNotify=%RTbool, vrcCallback=%Rrc, vrc=%Rrc\n",
     1520                 pCtx->cbProcessed, pCtx->cbExtra, fNotify, vrcCallback, vrc));
    15361521
    15371522    if (fNotify)
    15381523    {
    1539         int rc2 = pCtx->EventCallback.Notify(rcCallback);
    1540         AssertRC(rc2);
    1541     }
    1542 
    1543     LogFlowFuncLeaveRC(rc);
    1544     return rc; /* Tell the guest. */
     1524        int vrc2 = pCtx->EventCallback.Notify(vrcCallback);
     1525        AssertRC(vrc2);
     1526    }
     1527
     1528    LogFlowFuncLeaveRC(vrc);
     1529    return vrc; /* Tell the guest. */
    15451530}
    15461531
     
    15651550    LogFlowFunc(("pThis=%p, uMsg=%RU32\n", pThis, uMsg));
    15661551
    1567     int rc = VINF_SUCCESS;
    1568 
    1569     int rcCallback = VINF_SUCCESS; /* rc for the callback. */
     1552    int vrc = VINF_SUCCESS;
     1553
     1554    int vrcCallback = VINF_SUCCESS; /* vrc for the callback. */
    15701555    bool fNotify = false;
    15711556
     
    15771562
    15781563        case GUEST_DND_FN_DISCONNECT:
    1579             rc = VERR_CANCELLED;
     1564            vrc = VERR_CANCELLED;
    15801565            break;
    15811566
     
    15881573            AssertReturn(CB_MAGIC_DND_GH_SND_DATA_HDR == pCBData->hdr.uMagic, VERR_INVALID_PARAMETER);
    15891574
    1590             rc = pThis->i_onReceiveDataHdr(pCtx, &pCBData->data);
     1575            vrc = pThis->i_onReceiveDataHdr(pCtx, &pCBData->data);
    15911576            break;
    15921577        }
     
    15981583            AssertReturn(CB_MAGIC_DND_GH_SND_DATA == pCBData->hdr.uMagic, VERR_INVALID_PARAMETER);
    15991584
    1600             rc = pThis->i_onReceiveData(pCtx, &pCBData->data);
     1585            vrc = pThis->i_onReceiveData(pCtx, &pCBData->data);
    16011586            break;
    16021587        }
     
    16081593            AssertReturn(CB_MAGIC_DND_GH_SND_DIR == pCBData->hdr.uMagic, VERR_INVALID_PARAMETER);
    16091594
    1610             rc = pThis->i_onReceiveDir(pCtx, pCBData->pszPath, pCBData->cbPath, pCBData->fMode);
     1595            vrc = pThis->i_onReceiveDir(pCtx, pCBData->pszPath, pCBData->cbPath, pCBData->fMode);
    16111596            break;
    16121597        }
     
    16181603            AssertReturn(CB_MAGIC_DND_GH_SND_FILE_HDR == pCBData->hdr.uMagic, VERR_INVALID_PARAMETER);
    16191604
    1620             rc = pThis->i_onReceiveFileHdr(pCtx, pCBData->pszFilePath, pCBData->cbFilePath,
    1621                                            pCBData->cbSize, pCBData->fMode, pCBData->fFlags);
     1605            vrc = pThis->i_onReceiveFileHdr(pCtx, pCBData->pszFilePath, pCBData->cbFilePath,
     1606                                            pCBData->cbSize, pCBData->fMode, pCBData->fFlags);
    16221607            break;
    16231608        }
     
    16311616            if (pThis->m_pState->m_uProtocolVersion <= 1)
    16321617            {
    1633                 /**
     1618                /*
    16341619                 * Notes for protocol v1 (< VBox 5.0):
    16351620                 * - Every time this command is being sent it includes the file header,
     
    16381623                 *   appended data to the desired file. So just pass 0 as cbSize.
    16391624                 */
    1640                 rc = pThis->i_onReceiveFileHdr(pCtx, pCBData->u.v1.pszFilePath, pCBData->u.v1.cbFilePath,
    1641                                                0 /* cbSize */, pCBData->u.v1.fMode, 0 /* fFlags */);
    1642                 if (RT_SUCCESS(rc))
    1643                     rc = pThis->i_onReceiveFileData(pCtx, pCBData->pvData, pCBData->cbData);
     1625                vrc = pThis->i_onReceiveFileHdr(pCtx, pCBData->u.v1.pszFilePath, pCBData->u.v1.cbFilePath,
     1626                                                0 /* cbSize */, pCBData->u.v1.fMode, 0 /* fFlags */);
     1627                if (RT_SUCCESS(vrc))
     1628                    vrc = pThis->i_onReceiveFileData(pCtx, pCBData->pvData, pCBData->cbData);
    16441629            }
    16451630            else /* Protocol v2 and up. */
    1646                 rc = pThis->i_onReceiveFileData(pCtx, pCBData->pvData, pCBData->cbData);
     1631                vrc = pThis->i_onReceiveFileData(pCtx, pCBData->pvData, pCBData->cbData);
    16471632            break;
    16481633        }
     
    16621647            }
    16631648            else if (pCBData->rc == VERR_WRONG_ORDER)
    1664             {
    1665                 rc = pCtx->pState->setProgress(100, DND_PROGRESS_CANCELLED);
    1666             }
     1649                vrc = pCtx->pState->setProgress(100, DND_PROGRESS_CANCELLED);
    16671650            else
    1668                 rc = pCtx->pState->setProgress(100, DND_PROGRESS_ERROR, pCBData->rc,
    1669                                                GuestDnDSource::i_guestErrorToString(pCBData->rc));
     1651                vrc = pCtx->pState->setProgress(100, DND_PROGRESS_ERROR, pCBData->rc,
     1652                                                GuestDnDSource::i_guestErrorToString(pCBData->rc));
    16701653
    16711654            LogRel3(("DnD: Guest reported file transfer error: %Rrc\n", pCBData->rc));
    16721655
    1673             if (RT_SUCCESS(rc))
    1674                 rcCallback = VERR_DND_GUEST_ERROR;
     1656            if (RT_SUCCESS(vrc))
     1657                vrcCallback = VERR_DND_GUEST_ERROR;
    16751658            break;
    16761659        }
    16771660#endif /* VBOX_WITH_DRAG_AND_DROP_GH */
    16781661        default:
    1679             rc = VERR_NOT_SUPPORTED;
    1680             break;
    1681     }
    1682 
    1683     if (   RT_FAILURE(rc)
    1684         || RT_FAILURE(rcCallback))
     1662            vrc = VERR_NOT_SUPPORTED;
     1663            break;
     1664    }
     1665
     1666    if (   RT_FAILURE(vrc)
     1667        || RT_FAILURE(vrcCallback))
    16851668    {
    16861669        fNotify = true;
    1687         if (RT_SUCCESS(rcCallback))
    1688             rcCallback = rc;
    1689     }
    1690 
    1691     if (RT_FAILURE(rc))
    1692     {
    1693         switch (rc)
     1670        if (RT_SUCCESS(vrcCallback))
     1671            vrcCallback = vrc;
     1672    }
     1673
     1674    if (RT_FAILURE(vrc))
     1675    {
     1676        switch (vrc)
    16941677        {
    16951678            case VERR_NO_DATA:
     
    17021685
    17031686            default:
    1704                 LogRel(("DnD: Error %Rrc occurred, aborting file transfer to host\n", rc));
     1687                LogRel(("DnD: Error %Rrc occurred, aborting file transfer to host\n", vrc));
    17051688                break;
    17061689        }
     
    17081691        /* Unregister this callback. */
    17091692        AssertPtr(pCtx->pState);
    1710         int rc2 = pCtx->pState->setCallback(uMsg, NULL /* PFNGUESTDNDCALLBACK */);
    1711         AssertRC(rc2);
     1693        int vrc2 = pCtx->pState->setCallback(uMsg, NULL /* PFNGUESTDNDCALLBACK */);
     1694        AssertRC(vrc2);
    17121695    }
    17131696
     
    17151698    if (   pCtx->Transfer.isComplete()
    17161699        && pCtx->isComplete())
    1717     {
    17181700        fNotify = true;
    1719     }
    1720 
    1721     LogFlowFunc(("cbProcessed=%RU64, cbExtra=%RU64, fNotify=%RTbool, rcCallback=%Rrc, rc=%Rrc\n",
    1722                  pCtx->cbProcessed, pCtx->cbExtra, fNotify, rcCallback, rc));
     1701
     1702    LogFlowFunc(("cbProcessed=%RU64, cbExtra=%RU64, fNotify=%RTbool, vrcCallback=%Rrc, vrc=%Rrc\n",
     1703                 pCtx->cbProcessed, pCtx->cbExtra, fNotify, vrcCallback, vrc));
    17231704
    17241705    if (fNotify)
    17251706    {
    1726         int rc2 = pCtx->EventCallback.Notify(rcCallback);
    1727         AssertRC(rc2);
    1728     }
    1729 
    1730     LogFlowFuncLeaveRC(rc);
    1731     return rc; /* Tell the guest. */
    1732 }
    1733 
     1707        int vrc2 = pCtx->EventCallback.Notify(
     1708            vrcCallback);
     1709        AssertRC(vrc2);
     1710    }
     1711
     1712    LogFlowFuncLeaveRC(vrc);
     1713    return vrc; /* Tell the guest. */
     1714}
     1715
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