VirtualBox

Changeset 71636 in vbox


Ignore:
Timestamp:
Apr 3, 2018 5:54:57 PM (7 years ago)
Author:
vboxsync
Message:

Guest Control/Main: Ignore rc when notifying wait events in GuestFile::i_onFileNotify(); those could be long gone at that point of time.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/src-client/GuestFileImpl.cpp

    r71560 r71636  
    434434        return VERR_INVALID_PARAMETER;
    435435
    436     int vrc = VINF_SUCCESS;
     436    int rc = VINF_SUCCESS;
    437437
    438438    int idx = 1; /* Current parameter index. */
     
    452452        AssertRC(rc2);
    453453
    454         rc2 = signalWaitEventInternal(pCbCtx, rcGuest, NULL /* pPayload */);
    455         AssertRC(rc2);
    456 
     454        /* Ignore rc, as the event to signal might not be there (anymore). */
     455        signalWaitEventInternal(pCbCtx, rcGuest, NULL /* pPayload */);
    457456        return VINF_SUCCESS; /* Report to the guest. */
    458457    }
     
    483482            }
    484483            else
    485                 vrc = VERR_NOT_SUPPORTED;
     484                rc = VERR_NOT_SUPPORTED;
    486485
    487486            break;
     
    517516            }
    518517            else
    519                 vrc = VERR_NOT_SUPPORTED;
     518                rc = VERR_NOT_SUPPORTED;
    520519            break;
    521520        }
     
    538537            }
    539538            else
    540                 vrc = VERR_NOT_SUPPORTED;
     539                rc = VERR_NOT_SUPPORTED;
    541540            break;
    542541        }
     
    558557            }
    559558            else
    560                 vrc = VERR_NOT_SUPPORTED;
     559                rc = VERR_NOT_SUPPORTED;
    561560            break;
    562561        }
     
    578577            }
    579578            else
    580                 vrc = VERR_NOT_SUPPORTED;
     579                rc = VERR_NOT_SUPPORTED;
    581580            break;
    582581        }
    583582
    584583        default:
    585             vrc = VERR_NOT_SUPPORTED;
    586             break;
    587     }
    588 
    589     if (RT_SUCCESS(vrc))
     584            rc = VERR_NOT_SUPPORTED;
     585            break;
     586    }
     587
     588    if (RT_SUCCESS(rc))
    590589    {
    591590        GuestWaitEventPayload payload(dataCb.uType, &dataCb, sizeof(dataCb));
    592         int rc2 = signalWaitEventInternal(pCbCtx, rcGuest, &payload);
    593         AssertRC(rc2);
    594     }
    595 
    596     LogFlowThisFunc(("uType=%RU32, rcGuest=%Rrc\n",
    597                      dataCb.uType, dataCb.rc));
    598 
    599     LogFlowFuncLeaveRC(vrc);
    600     return vrc;
     591
     592        /* Ignore rc, as the event to signal might not be there (anymore). */
     593        signalWaitEventInternal(pCbCtx, rcGuest, &payload);
     594    }
     595
     596    LogFlowThisFunc(("uType=%RU32, rcGuest=%Rrc, rc=%Rrc\n", dataCb.uType, rcGuest, rc));
     597    return rc;
    601598}
    602599
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