Changeset 47566 in vbox for trunk/src/VBox/GuestHost/OpenGL/util
- Timestamp:
- Aug 6, 2013 10:20:23 PM (12 years ago)
- svn:sync-xref-src-repo-rev:
- 87766
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/GuestHost/OpenGL/util/vreg.cpp
r46966 r47566 1749 1749 Assert(cRects); 1750 1750 Assert(cRects <= pData->cRects); 1751 int rc = VBoxVrListRectsGet(&pCEntry->Vr, cRects, pEntry->paDst Rects);1751 int rc = VBoxVrListRectsGet(&pCEntry->Vr, cRects, pEntry->paDstUnstretchedRects); 1752 1752 AssertRC(rc); 1753 1753 1754 memcpy(pEntry->paDstUnstretchedRects, pEntry->paDstRects, cRects * sizeof (*pEntry->paDstUnstretchedRects));1755 1756 1754 if (!pEntry->Pos.x && !pEntry->Pos.y) 1757 1755 { 1758 memcpy(pEntry->paSrcRects, pEntry->paDst Rects, cRects * sizeof (*pEntry->paSrcRects));1756 memcpy(pEntry->paSrcRects, pEntry->paDstUnstretchedRects, cRects * sizeof (*pEntry->paSrcRects)); 1759 1757 } 1760 1758 else … … 1762 1760 for (uint32_t i = 0; i < cRects; ++i) 1763 1761 { 1764 pEntry->paSrcRects[i].xLeft = (int32_t)((pEntry->paDst Rects[i].xLeft - pEntry->Pos.x));1765 pEntry->paSrcRects[i].yTop = (int32_t)((pEntry->paDst Rects[i].yTop - pEntry->Pos.y));1766 pEntry->paSrcRects[i].xRight = (int32_t)((pEntry->paDst Rects[i].xRight - pEntry->Pos.x));1767 pEntry->paSrcRects[i].yBottom = (int32_t)((pEntry->paDst Rects[i].yBottom - pEntry->Pos.y));1762 pEntry->paSrcRects[i].xLeft = (int32_t)((pEntry->paDstUnstretchedRects[i].xLeft - pEntry->Pos.x)); 1763 pEntry->paSrcRects[i].yTop = (int32_t)((pEntry->paDstUnstretchedRects[i].yTop - pEntry->Pos.y)); 1764 pEntry->paSrcRects[i].xRight = (int32_t)((pEntry->paDstUnstretchedRects[i].xRight - pEntry->Pos.x)); 1765 pEntry->paSrcRects[i].yBottom = (int32_t)((pEntry->paDstUnstretchedRects[i].yBottom - pEntry->Pos.y)); 1768 1766 } 1769 1767 } … … 1776 1774 if (pCompositor->StretchX != 1.) 1777 1775 { 1778 pEntry->paDstRects[i].xLeft = (int32_t)(pEntry->paDst Rects[i].xLeft * pCompositor->StretchX);1779 pEntry->paDstRects[i].xRight = (int32_t)(pEntry->paDst Rects[i].xRight * pCompositor->StretchX);1776 pEntry->paDstRects[i].xLeft = (int32_t)(pEntry->paDstUnstretchedRects[i].xLeft * pCompositor->StretchX); 1777 pEntry->paDstRects[i].xRight = (int32_t)(pEntry->paDstUnstretchedRects[i].xRight * pCompositor->StretchX); 1780 1778 } 1781 1779 if (pCompositor->StretchY != 1.) 1782 1780 { 1783 pEntry->paDstRects[i].yTop = (int32_t)(pEntry->paDstRects[i].yTop * pCompositor->StretchY); 1784 pEntry->paDstRects[i].yBottom = (int32_t)(pEntry->paDstRects[i].yBottom * pCompositor->StretchY); 1785 } 1786 } 1787 } 1788 1781 pEntry->paDstRects[i].yTop = (int32_t)(pEntry->paDstUnstretchedRects[i].yTop * pCompositor->StretchY); 1782 pEntry->paDstRects[i].yBottom = (int32_t)(pEntry->paDstUnstretchedRects[i].yBottom * pCompositor->StretchY); 1783 } 1784 } 1785 } 1786 else 1787 #endif 1788 { 1789 memcpy(pEntry->paDstRects, pEntry->paDstUnstretchedRects, cRects * sizeof (*pEntry->paDstUnstretchedRects)); 1790 } 1791 1792 #if 0//ndef IN_RING0 1789 1793 bool canZeroX = (pCompositor->StretchX < 1.); 1790 1794 bool canZeroY = (pCompositor->StretchY < 1.); … … 1795 1799 for (iOrig = 0, iNew = 0; iOrig < cRects; ++iOrig) 1796 1800 { 1797 PRTRECT pOrigRect = &pEntry->pa SrcRects[iOrig];1798 if (pOrigRect->xLeft == pOrigRect->xRight1799 || pOrigRect->yTop == pOrigRect->yBottom)1801 PRTRECT pOrigRect = &pEntry->paDstRects[iOrig]; 1802 if (pOrigRect->xLeft != pOrigRect->xRight 1803 && pOrigRect->yTop != pOrigRect->yBottom) 1800 1804 continue; 1801 1805 … … 2294 2298 } 2295 2299 2296 VBOXVREGDECL(uint32_t) CrVrScrCompositorEntryFlags Get(PVBOXVR_SCR_COMPOSITOR pCompositor, PVBOXVR_SCR_COMPOSITOR_ENTRY pEntry)2300 VBOXVREGDECL(uint32_t) CrVrScrCompositorEntryFlagsCombinedGet(PVBOXVR_SCR_COMPOSITOR pCompositor, PVBOXVR_SCR_COMPOSITOR_ENTRY pEntry) 2297 2301 { 2298 2302 return CRBLT_FOP_COMBINE(pCompositor->fFlags, pEntry->fFlags);
Note:
See TracChangeset
for help on using the changeset viewer.