- Timestamp:
- Sep 2, 2009 5:09:36 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Graphics/DevVGA_VBVA.cpp
r22652 r22726 464 464 static int vbvaEnable (unsigned uScreenId, PVGASTATE pVGAState, VBVACONTEXT *pCtx, VBVABUFFER *pVBVA, uint32_t u32Offset) 465 465 { 466 /* Process any pending orders and empty the VBVA ring buffer. */467 vbvaFlush (pVGAState, pCtx);468 469 466 /* @todo old code did a UpdateDisplayAll at this place. */ 470 467 … … 696 693 AssertRCReturn(rc, rc); 697 694 698 rc = SSMR3PutU32 (pSSM, pView-> u32VBVAOffset);695 rc = SSMR3PutU32 (pSSM, pView->pVBVA? pView->u32VBVAOffset: HGSMIOFFSET_VOID); 699 696 AssertRCReturn(rc, rc); 700 697 … … 802 799 } 803 800 804 if (pView->u32VBVAOffset == HGSMIOFFSET_VOID) 801 if ( pView->u32VBVAOffset == HGSMIOFFSET_VOID 802 || pView->screen.u32LineSize == 0) /* Earlier broken saved states. */ 805 803 { 806 804 pView->pVBVA = NULL; … … 838 836 if (pView->pVBVA) 839 837 { 838 vbvaEnable (iView, pVGAState, pCtx, pView->pVBVA, pView->u32VBVAOffset); 840 839 vbvaResize (pVGAState, pView, &pView->screen); 841 840 } … … 1272 1271 if (pVBVA) 1273 1272 { 1273 /* Process any pending orders and empty the VBVA ring buffer. */ 1274 vbvaFlush (pVGAState, pCtx); 1275 1274 1276 rc = vbvaEnable (uScreenId, pVGAState, pCtx, pVBVA, u32Offset); 1275 1277 }
Note:
See TracChangeset
for help on using the changeset viewer.