VirtualBox

Changeset 50825 in vbox for trunk/src/VBox


Ignore:
Timestamp:
Mar 19, 2014 4:18:24 PM (11 years ago)
Author:
vboxsync
Message:

GuestCtrl/HostService: Complete call if a client was not found anymore.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/HostServices/GuestControl/service.cpp

    r49349 r50825  
    55
    66/*
    7  * Copyright (C) 2011-2013 Oracle Corporation
     7 * Copyright (C) 2011-2014 Oracle Corporation
    88 *
    99 * This file is part of VirtualBox Open Source Edition (OSE), as
     
    922922     * Simply deletes the service object
    923923     */
    924     static DECLCALLBACK(int) svcUnload (void *pvService)
     924    static DECLCALLBACK(int) svcUnload(void *pvService)
    925925    {
    926926        AssertLogRelReturn(VALID_PTR(pvService), VERR_INVALID_PARAMETER);
     
    937937     * Stub implementation of pfnConnect and pfnDisconnect.
    938938     */
    939     static DECLCALLBACK(int) svcConnect (void *pvService,
    940                                          uint32_t u32ClientID,
    941                                          void *pvClient)
     939    static DECLCALLBACK(int) svcConnect(void *pvService,
     940                                        uint32_t u32ClientID,
     941                                        void *pvClient)
    942942    {
    943943        AssertLogRelReturn(VALID_PTR(pvService), VERR_INVALID_PARAMETER);
     
    951951     * Stub implementation of pfnConnect and pfnDisconnect.
    952952     */
    953     static DECLCALLBACK(int) svcDisconnect (void *pvService,
    954                                             uint32_t u32ClientID,
    955                                             void *pvClient)
     953    static DECLCALLBACK(int) svcDisconnect(void *pvService,
     954                                           uint32_t u32ClientID,
     955                                           void *pvClient)
    956956    {
    957957        AssertLogRelReturn(VALID_PTR(pvService), VERR_INVALID_PARAMETER);
     
    965965     * Wraps to the call member function
    966966     */
    967     static DECLCALLBACK(void) svcCall (void * pvService,
    968                                        VBOXHGCMCALLHANDLE callHandle,
    969                                        uint32_t u32ClientID,
    970                                        void *pvClient,
    971                                        uint32_t u32Function,
    972                                        uint32_t cParms,
    973                                        VBOXHGCMSVCPARM paParms[])
     967    static DECLCALLBACK(void) svcCall(void * pvService,
     968                                      VBOXHGCMCALLHANDLE callHandle,
     969                                      uint32_t u32ClientID,
     970                                      void *pvClient,
     971                                      uint32_t u32Function,
     972                                      uint32_t cParms,
     973                                      VBOXHGCMSVCPARM paParms[])
    974974    {
    975975        AssertLogRelReturnVoid(VALID_PTR(pvService));
     
    983983     * Wraps to the hostCall member function
    984984     */
    985     static DECLCALLBACK(int) svcHostCall (void *pvService,
    986                                           uint32_t u32Function,
    987                                           uint32_t cParms,
    988                                           VBOXHGCMSVCPARM paParms[])
     985    static DECLCALLBACK(int) svcHostCall(void *pvService,
     986                                         uint32_t u32Function,
     987                                         uint32_t cParms,
     988                                         VBOXHGCMSVCPARM paParms[])
    989989    {
    990990        AssertLogRelReturn(VALID_PTR(pvService), VERR_INVALID_PARAMETER);
     
    998998     * Installs a host callback for notifications of property changes.
    999999     */
    1000     static DECLCALLBACK(int) svcRegisterExtension (void *pvService,
    1001                                                    PFNHGCMSVCEXT pfnExtension,
    1002                                                    void *pvExtension)
     1000    static DECLCALLBACK(int) svcRegisterExtension(void *pvService,
     1001                                                  PFNHGCMSVCEXT pfnExtension,
     1002                                                  void *pvExtension)
    10031003    {
    10041004        AssertLogRelReturn(VALID_PTR(pvService), VERR_INVALID_PARAMETER);
     
    10751075    ClientStateMapIter itClientState = mClientStateMap.find(u32ClientID);
    10761076    AssertMsg(itClientState != mClientStateMap.end(),
    1077               ("Clients ID=%RU32 not found in client list when it should be there\n", u32ClientID));
     1077              ("Client ID=%RU32 not found in client list when it should be there\n", u32ClientID));
    10781078
    10791079    if (itClientState != mClientStateMap.end())
     
    11461146                                                       u32ClientID));
    11471147    if (itClientState == mClientStateMap.end())
    1148         return VERR_NOT_FOUND; /* Should never happen. */
     1148    {
     1149        /* Should never happen. Complete the call on the guest side though. */
     1150        AssertPtr(mpHelpers);
     1151        mpHelpers->pfnCallComplete(callHandle, VERR_NOT_FOUND);
     1152
     1153        return VERR_NOT_FOUND;
     1154    }
    11491155
    11501156    ClientState &clientState = itClientState->second;
     
    15711577}
    15721578
    1573 int Service::uninit()
     1579int Service::uninit(void)
    15741580{
    15751581    return VINF_SUCCESS;
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