- Timestamp:
- Apr 19, 2007 12:19:29 PM (18 years ago)
- Location:
- trunk/src/VBox/Main
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Main/DisplayImpl.cpp
r2212 r2219 273 273 274 274 /* The method also unlocks the framebuffer. */ 275 handleResizeCompletedEMT( false /* fAsync */);275 handleResizeCompletedEMT(); 276 276 277 277 return VINF_SUCCESS; … … 284 284 * @thread EMT 285 285 */ 286 void Display::handleResizeCompletedEMT ( bool fAsync)286 void Display::handleResizeCompletedEMT (void) 287 287 { 288 288 LogFlowFunc(("\n")); … … 298 298 299 299 mpDrv->pUpPort->pfnSetRenderVRAM (mpDrv->pUpPort, newPixelFormat == FramebufferPixelFormat_PixelFormatDefault); 300 301 /* Unlock framebuffer. */302 mFramebuffer->Unlock();303 300 } 304 301 … … 322 319 bool f = ASMAtomicCmpXchgU32 (&mu32ResizeStatus, ResizeStatus_Void, ResizeStatus_UpdateDisplayData); 323 320 AssertRelease(f);NOREF(f); 324 325 if (fAsync) 326 { 327 /* Repaint the display, but only if the resize was asynchronous. That is only 328 * when VINF_VGA_RESIZE_IN_PROGRESS was returned to the VGA device and VM continued 329 * to run during the framebuffer resize. */ 330 mpDrv->pUpPort->pfnUpdateDisplayAll(mpDrv->pUpPort); 321 322 if (!mFramebuffer.isNull()) 323 { 324 /* Unlock framebuffer after evrything is done. */ 325 mFramebuffer->Unlock(); 331 326 } 332 327 } … … 1800 1795 LogFlowFunc (("ResizeStatus_UpdateDisplayData\n")); 1801 1796 /* The framebuffer was resized and display data need to be updated. */ 1802 pDisplay->handleResizeCompletedEMT ( true /* fAsync */);1797 pDisplay->handleResizeCompletedEMT (); 1803 1798 /* Continue with normal processing because the status here is ResizeStatus_Void. */ 1804 1799 Assert (pDisplay->mu32ResizeStatus == ResizeStatus_Void); 1800 /* Repaint the display because VM continued to run during the framebuffer resize. */ 1801 if (!pDisplay->mFramebuffer.isNull()) 1802 pDrv->pUpPort->pfnUpdateDisplayAll(pDrv->pUpPort); 1803 /* Ignore the refresh to replay the logic. */ 1804 return; 1805 1805 } 1806 1806 else if (u32ResizeStatus == ResizeStatus_InProgress) -
trunk/src/VBox/Main/include/DisplayImpl.h
r2212 r2219 185 185 void vbvaReleaseCmd (VBVACMDHDR *pHdr, int32_t cbCmd); 186 186 187 void handleResizeCompletedEMT ( bool fAsync);187 void handleResizeCompletedEMT (void); 188 188 volatile uint32_t mu32ResizeStatus; 189 189
Note:
See TracChangeset
for help on using the changeset viewer.