Changeset 50828 in vbox for trunk/src/VBox
- Timestamp:
- Mar 20, 2014 9:29:56 AM (11 years ago)
- Location:
- trunk/src/VBox/Main
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Main/include/DisplayImpl.h
r50754 r50828 355 355 void vbvaReleaseCmd(VBVACMDHDR *pHdr, int32_t cbCmd); 356 356 357 void handleResizeCompletedEMT( void);357 void handleResizeCompletedEMT(unsigned uScreenId); 358 358 359 359 RTCRITSECT mVBVALock; -
trunk/src/VBox/Main/src-client/DisplayImpl.cpp
r50805 r50828 980 980 981 981 /* The method also unlocks the framebuffer. */ 982 handleResizeCompletedEMT( );982 handleResizeCompletedEMT(uScreenId); 983 983 984 984 return VINF_SUCCESS; … … 991 991 * @thread EMT 992 992 */ 993 void Display::handleResizeCompletedEMT (void)993 void Display::handleResizeCompletedEMT(unsigned uScreenId) 994 994 { 995 995 LogRelFlowFunc(("\n")); 996 996 997 unsigned uScreenId; 998 for (uScreenId = 0; uScreenId < mcMonitors; uScreenId++) 999 { 997 do /* to use 'break' */ 998 { 999 if (uScreenId >= mcMonitors) 1000 { 1001 break; 1002 } 1003 1000 1004 DISPLAYFBINFO *pFBInfo = &maFramebuffers[uScreenId]; 1001 1005 … … 1006 1010 { 1007 1011 /* This is not the display that has completed resizing. */ 1008 continue; 1012 AssertFailed(); 1013 break; 1009 1014 } 1010 1015 … … 1021 1026 handleDisplayResize (uScreenId, pFBInfo->pendingResize.bpp, pFBInfo->pendingResize.pvVRAM, 1022 1027 pFBInfo->pendingResize.cbLine, pFBInfo->pendingResize.w, pFBInfo->pendingResize.h, pFBInfo->pendingResize.flags); 1023 continue;1028 break; 1024 1029 } 1025 1030 … … 1073 1078 } 1074 1079 LogRelFlow(("[%d]: default format %d\n", uScreenId, pFBInfo->fDefaultFormat)); 1075 1076 /* Repaint the display because VM continued to run during the framebuffer resize. */1077 InvalidateAndUpdateEMT(this, uScreenId, false);1078 1080 1079 1081 /* Handle the case if there are some saved visible region that needs to be … … 1131 1133 } 1132 1134 #endif /* VBOX_WITH_CROGL */ 1133 } 1135 } while(0); 1134 1136 } 1135 1137 … … 3839 3841 fNoUpdate = true; /* Always set it here, because pfnUpdateDisplayAll can cause a new resize. */ 3840 3842 /* The framebuffer was resized and display data need to be updated. */ 3841 pDisplay->handleResizeCompletedEMT ();3843 pDisplay->handleResizeCompletedEMT(uScreenId); 3842 3844 if (pFBInfo->u32ResizeStatus != ResizeStatus_Void) 3843 3845 { … … 3845 3847 continue; 3846 3848 } 3849 3850 /* Repaint the display because VM continued to run during the framebuffer resize. */ 3851 pDisplay->InvalidateAndUpdateEMT(pDisplay, uScreenId, false); 3852 3847 3853 /* Continue with normal processing because the status here is ResizeStatus_Void. */ 3848 3854 }
Note:
See TracChangeset
for help on using the changeset viewer.