Changeset 39892 in vbox for trunk/src/VBox/Devices/VMMDev
- Timestamp:
- Jan 26, 2012 8:22:33 PM (13 years ago)
- svn:sync-xref-src-repo-rev:
- 75942
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/VMMDev/VMMDev.cpp
r39890 r39892 533 533 strcpy(pThis->guestInfo2.szName, pszName); 534 534 535 pThis->pDrv->pfnUpdateGuestInfo2(pThis->pDrv, uFullVersion, pszName, pInfo2->additionsRevision, pInfo2->additionsFeatures); 535 if (pThis->pDrv && pThis->pDrv->pfnUpdateGuestInfo2) 536 pThis->pDrv->pfnUpdateGuestInfo2(pThis->pDrv, uFullVersion, pszName, pInfo2->additionsRevision, pInfo2->additionsFeatures); 536 537 537 538 return VINF_SUCCESS; … … 680 681 } 681 682 682 if (pThis->pDrv )683 if (pThis->pDrv && pThis->pDrv->pfnUpdateGuestStatus) 683 684 pThis->pDrv->pfnUpdateGuestStatus(pThis->pDrv, pStatus->facility, pStatus->status, pStatus->flags, &Now); 684 685 … … 808 809 pThis->guestInfo.interfaceVersion, 809 810 pThis->guestInfo.osType)); 810 pThis->pDrv->pfnUpdateGuestInfo(pThis->pDrv, &pThis->guestInfo); 811 if (pThis->pDrv && pThis->pDrv->pfnUpdateGuestInfo) 812 pThis->pDrv->pfnUpdateGuestInfo(pThis->pDrv, &pThis->guestInfo); 811 813 } 812 814 … … 910 912 guestCaps->caps & VMMDEV_GUEST_SUPPORTS_GRAPHICS ? "yes" : "no")); 911 913 912 pThis->pDrv->pfnUpdateGuestCapabilities(pThis->pDrv, guestCaps->caps); 914 if (pThis->pDrv && pThis->pDrv->pfnUpdateGuestCapabilities) 915 pThis->pDrv->pfnUpdateGuestCapabilities(pThis->pDrv, guestCaps->caps); 913 916 } 914 917 pRequestHeader->rc = VINF_SUCCESS; … … 941 944 pThis->guestCaps & VMMDEV_GUEST_SUPPORTS_GRAPHICS ? "yes" : "no")); 942 945 943 pThis->pDrv->pfnUpdateGuestCapabilities(pThis->pDrv, pThis->guestCaps); 946 if (pThis->pDrv && pThis->pDrv->pfnUpdateGuestCapabilities) 947 pThis->pDrv->pfnUpdateGuestCapabilities(pThis->pDrv, pThis->guestCaps); 944 948 pRequestHeader->rc = VINF_SUCCESS; 945 949 } … … 3015 3019 if (pThis->pDrv) 3016 3020 { 3017 if (pThis->guestInfo2.uFullVersion )3021 if (pThis->guestInfo2.uFullVersion && pThis->pDrv->pfnUpdateGuestInfo2) 3018 3022 pThis->pDrv->pfnUpdateGuestInfo2(pThis->pDrv, pThis->guestInfo2.uFullVersion, pThis->guestInfo2.szName, 3019 3023 pThis->guestInfo2.uRevision, pThis->guestInfo2.fFeatures); 3020 pThis->pDrv->pfnUpdateGuestInfo(pThis->pDrv, &pThis->guestInfo); 3021 } 3022 3023 for (uint32_t i = 0; i < pThis->cFacilityStatuses; i++) /* ascending order! */ 3024 if ( pThis->aFacilityStatuses[i].uStatus != VBoxGuestFacilityStatus_Inactive 3025 || !pThis->aFacilityStatuses[i].fFixed) 3026 pThis->pDrv->pfnUpdateGuestStatus(pThis->pDrv, 3027 pThis->aFacilityStatuses[i].uFacility, 3028 pThis->aFacilityStatuses[i].uStatus, 3029 pThis->aFacilityStatuses[i].fFlags, 3030 &pThis->aFacilityStatuses[i].TimeSpecTS); 3031 } 3032 if (pThis->pDrv) 3024 if (pThis->pDrv->pfnUpdateGuestInfo) 3025 pThis->pDrv->pfnUpdateGuestInfo(pThis->pDrv, &pThis->guestInfo); 3026 3027 if (pThis->pDrv->pfnUpdateGuestStatus) 3028 { 3029 for (uint32_t i = 0; i < pThis->cFacilityStatuses; i++) /* ascending order! */ 3030 if ( pThis->aFacilityStatuses[i].uStatus != VBoxGuestFacilityStatus_Inactive 3031 || !pThis->aFacilityStatuses[i].fFixed) 3032 pThis->pDrv->pfnUpdateGuestStatus(pThis->pDrv, 3033 pThis->aFacilityStatuses[i].uFacility, 3034 pThis->aFacilityStatuses[i].uStatus, 3035 pThis->aFacilityStatuses[i].fFlags, 3036 &pThis->aFacilityStatuses[i].TimeSpecTS); 3037 } 3038 } 3039 } 3040 if (pThis->pDrv && pThis->pDrv->pfnUpdateGuestCapabilities) 3033 3041 pThis->pDrv->pfnUpdateGuestCapabilities(pThis->pDrv, pThis->guestCaps); 3034 3042 … … 3176 3184 * Call the update functions as required. 3177 3185 */ 3178 if (fVersionChanged )3186 if (fVersionChanged && pThis->pDrv && pThis->pDrv->pfnUpdateGuestInfo) 3179 3187 pThis->pDrv->pfnUpdateGuestInfo(pThis->pDrv, &pThis->guestInfo); 3180 if (fCapsChanged )3188 if (fCapsChanged && pThis->pDrv && pThis->pDrv->pfnUpdateGuestCapabilities) 3181 3189 pThis->pDrv->pfnUpdateGuestCapabilities(pThis->pDrv, pThis->guestCaps); 3182 3190
Note:
See TracChangeset
for help on using the changeset viewer.