diff options
author | Alexander Gottwald <alexander.gottwald@s1999.tu-chemnitz.de> | 2005-02-11 10:53:14 +0000 |
---|---|---|
committer | Alexander Gottwald <alexander.gottwald@s1999.tu-chemnitz.de> | 2005-02-11 10:53:14 +0000 |
commit | 61abb2602865c036277eb423abb27d8c52214687 (patch) | |
tree | c014036b8a514dd37378d59da66bd1443b281b48 | |
parent | 02bbf384da04d33da167f65b6cdaaf1f01a69cc3 (diff) |
Import changes from XORG-6.8.2CYGWIN-6_8_2-MERGECYGWIN
-rw-r--r-- | src/nsc_gx1_video.c | 82 | ||||
-rw-r--r-- | src/nsc_gx2_video.c | 75 |
2 files changed, 74 insertions, 83 deletions
diff --git a/src/nsc_gx1_video.c b/src/nsc_gx1_video.c index 06e671e..b46d5de 100644 --- a/src/nsc_gx1_video.c +++ b/src/nsc_gx1_video.c @@ -240,45 +240,42 @@ GX1InitVideo(ScreenPtr pScreen) GeodePtr pGeode; ScrnInfoPtr pScreenInfo = xf86Screens[pScreen->myNum]; + XF86VideoAdaptorPtr *adaptors, *newAdaptors = NULL; + XF86VideoAdaptorPtr newAdaptor = NULL; + + int num_adaptors; pGeode = GEODEPTR(pScreenInfo); - if (!pGeode->NoAccel) { - ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; - XF86VideoAdaptorPtr *adaptors, *newAdaptors = NULL; - XF86VideoAdaptorPtr newAdaptor = NULL; - - int num_adaptors; - - DEBUGMSG(0, (0, X_NONE, "InitVideo\n")); - newAdaptor = GX1SetupImageVideo(pScreen); - GX1InitOffscreenImages(pScreen); - - num_adaptors = xf86XVListGenericAdaptors(pScrn, &adaptors); - - if (newAdaptor) { - if (!num_adaptors) { - num_adaptors = 1; - adaptors = &newAdaptor; - } else { - newAdaptors = /* need to free this someplace */ - xalloc((num_adaptors + 1) * sizeof(XF86VideoAdaptorPtr *)); - if (newAdaptors) { + + DEBUGMSG(0, (0, X_NONE, "InitVideo\n")); + newAdaptor = GX1SetupImageVideo(pScreen); + GX1InitOffscreenImages(pScreen); + + num_adaptors = xf86XVListGenericAdaptors(pScreenInfo, &adaptors); + + if (newAdaptor) { + if (!num_adaptors) { + num_adaptors = 1; + adaptors = &newAdaptor; + } else { + newAdaptors = /* need to free this someplace */ + xalloc((num_adaptors + 1) * sizeof(XF86VideoAdaptorPtr *)); + if (newAdaptors) { memcpy(newAdaptors, adaptors, num_adaptors * sizeof(XF86VideoAdaptorPtr)); newAdaptors[num_adaptors] = newAdaptor; adaptors = newAdaptors; num_adaptors++; - } - } - } - - if (num_adaptors) - xf86XVScreenInit(pScreen, adaptors, num_adaptors); - - if (newAdaptors) - xfree(newAdaptors); + } + } } + + if (num_adaptors) + xf86XVScreenInit(pScreen, adaptors, num_adaptors); + + if (newAdaptors) + xfree(newAdaptors); } /* client libraries expect an encoding */ @@ -413,17 +410,15 @@ GX1SetColorkey(ScrnInfoPtr pScrn, GeodePortPrivPtr pPriv) void GX1ResetVideo(ScrnInfoPtr pScrn) { - GeodePtr pGeode = GEODEPTR(pScrn); + GeodePtr pGeode = GEODEPTR(pScrn); - if (!pGeode->NoAccel) { - GeodePortPrivPtr pPriv = pGeode->adaptor->pPortPrivates[0].ptr; + GeodePortPrivPtr pPriv = pGeode->adaptor->pPortPrivates[0].ptr; - DEBUGMSG(0, (0, X_NONE, "ResetVideo\n")); - GX1AccelSync(pScrn); - GFX(set_video_palette(NULL)); - GX1SetColorkey(pScrn, pPriv); - GFX(set_video_filter(pPriv->filter, pPriv->filter)); - } + DEBUGMSG(0, (0, X_NONE, "ResetVideo\n")); + if (!pGeode->NoAccel) GX1AccelSync(pScrn); + GFX(set_video_palette(NULL)); + GX1SetColorkey(pScrn, pPriv); + GFX(set_video_filter(pPriv->filter, pPriv->filter)); } /*---------------------------------------------------------------------------- @@ -537,7 +532,7 @@ GX1StopVideo(ScrnInfoPtr pScrn, pointer data, Bool exit) DEBUGMSG(0, (0, X_NONE, "StopVideo\n")); REGION_EMPTY(pScrn->pScreen, &pPriv->clip); - GX1AccelSync(pScrn); + if (!pGeode->NoAccel) GX1AccelSync(pScrn); if (exit) { if (pPriv->videoStatus & CLIENT_VIDEO_ON) { GFX(set_video_enable(0)); @@ -580,8 +575,9 @@ GX1SetPortAttribute(ScrnInfoPtr pScrn, Atom attribute, INT32 value, pointer data) { GeodePortPrivPtr pPriv = (GeodePortPrivPtr) data; + GeodePtr pGeode = GEODEPTR(pScrn); - GX1AccelSync(pScrn); + if (!pGeode->NoAccel) GX1AccelSync(pScrn); if (attribute == xvColorKey) { pPriv->colorKey = value; GX1SetColorkey(pScrn, pPriv); @@ -1002,7 +998,7 @@ GX1DisplayVideo(ScrnInfoPtr pScrn, GeodePtr pGeode = GEODEPTR(pScrn); /* DisplayModePtr mode = pScrn->currentMode; */ - GX1AccelSync(pScrn); + if (!pGeode->NoAccel) GX1AccelSync(pScrn); GFX(set_video_enable(1)); @@ -1353,7 +1349,7 @@ GX1BlockHandler(int i, pointer blockData, pointer pTimeout, pointer pReadmask) (*pScreen->BlockHandler) (i, blockData, pTimeout, pReadmask); pScreen->BlockHandler = GX1BlockHandler; - GX1AccelSync(pScrn); + if (!pGeode->NoAccel) GX1AccelSync(pScrn); if (pPriv->videoStatus & TIMER_MASK) { UpdateCurrentTime(); if (pPriv->videoStatus & OFF_TIMER) { diff --git a/src/nsc_gx2_video.c b/src/nsc_gx2_video.c index 2213f32..be2fceb 100644 --- a/src/nsc_gx2_video.c +++ b/src/nsc_gx2_video.c @@ -233,46 +233,42 @@ static Atom xvColorKey, xvColorKeyMode, xvFilter void GX2InitVideo(ScreenPtr pScreen) { - GeodePtr pGeode; - ScrnInfoPtr pScreenInfo = xf86Screens[pScreen->myNum]; + GeodePtr pGeode; + ScrnInfoPtr pScreenInfo = xf86Screens[pScreen->myNum]; + XF86VideoAdaptorPtr *adaptors, *newAdaptors = NULL; + XF86VideoAdaptorPtr newAdaptor = NULL; - pGeode = GEODEPTR(pScreenInfo); + int num_adaptors; - if (!pGeode->NoAccel) { - ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; - XF86VideoAdaptorPtr *adaptors, *newAdaptors = NULL; - XF86VideoAdaptorPtr newAdaptor = NULL; + pGeode = GEODEPTR(pScreenInfo); - int num_adaptors; + newAdaptor = GX2SetupImageVideo(pScreen); + GX2InitOffscreenImages(pScreen); - newAdaptor = GX2SetupImageVideo(pScreen); - GX2InitOffscreenImages(pScreen); + num_adaptors = xf86XVListGenericAdaptors(pScreenInfo, &adaptors); - num_adaptors = xf86XVListGenericAdaptors(pScrn, &adaptors); - - if (newAdaptor) { - if (!num_adaptors) { + if (newAdaptor) { + if (!num_adaptors) { num_adaptors = 1; adaptors = &newAdaptor; - } else { + } else { newAdaptors = /* need to free this someplace */ - xalloc((num_adaptors + 1) * sizeof(XF86VideoAdaptorPtr *)); + xalloc((num_adaptors + 1) * sizeof(XF86VideoAdaptorPtr *)); if (newAdaptors) { - memcpy(newAdaptors, adaptors, num_adaptors * - sizeof(XF86VideoAdaptorPtr)); - newAdaptors[num_adaptors] = newAdaptor; - adaptors = newAdaptors; - num_adaptors++; + memcpy(newAdaptors, adaptors, num_adaptors * + sizeof(XF86VideoAdaptorPtr)); + newAdaptors[num_adaptors] = newAdaptor; + adaptors = newAdaptors; + num_adaptors++; } - } - } + } + } - if (num_adaptors) - xf86XVScreenInit(pScreen, adaptors, num_adaptors); + if (num_adaptors) + xf86XVScreenInit(pScreen, adaptors, num_adaptors); - if (newAdaptors) - xfree(newAdaptors); - } + if (newAdaptors) + xfree(newAdaptors); } /* client libraries expect an encoding */ @@ -416,16 +412,14 @@ GX2SetColorkey(ScrnInfoPtr pScrn, GeodePortPrivPtr pPriv) void GX2ResetVideo(ScrnInfoPtr pScrn) { - GeodePtr pGeode = GEODEPTR(pScrn); + GeodePtr pGeode = GEODEPTR(pScrn); - if (!pGeode->NoAccel) { - GeodePortPrivPtr pPriv = pGeode->adaptor->pPortPrivates[0].ptr; + GeodePortPrivPtr pPriv = pGeode->adaptor->pPortPrivates[0].ptr; - GX2AccelSync(pScrn); - GFX(set_video_palette(NULL)); - GX2SetColorkey(pScrn, pPriv); - GFX(set_video_filter(pPriv->filter, pPriv->filter)); - } + if (!pGeode->NoAccel) GX2AccelSync(pScrn); + GFX(set_video_palette(NULL)); + GX2SetColorkey(pScrn, pPriv); + GFX(set_video_filter(pPriv->filter, pPriv->filter)); } /*---------------------------------------------------------------------------- @@ -537,7 +531,7 @@ GX2StopVideo(ScrnInfoPtr pScrn, pointer data, Bool exit) REGION_EMPTY(pScrn->pScreen, &pPriv->clip); - GX2AccelSync(pScrn); + if (!pGeode->NoAccel) GX2AccelSync(pScrn); if (exit) { if (pPriv->videoStatus & CLIENT_VIDEO_ON) { GFX(set_video_enable(0)); @@ -580,8 +574,9 @@ GX2SetPortAttribute(ScrnInfoPtr pScrn, Atom attribute, INT32 value, pointer data) { GeodePortPrivPtr pPriv = (GeodePortPrivPtr) data; + GeodePtr pGeode = GEODEPTR(pScrn); - GX2AccelSync(pScrn); + if (!pGeode->NoAccel) GX2AccelSync(pScrn); if (attribute == xvColorKey) { pPriv->colorKey = value; GX2SetColorkey(pScrn, pPriv); @@ -941,7 +936,7 @@ GX2DisplayVideo(ScrnInfoPtr pScrn, { GeodePtr pGeode = GEODEPTR(pScrn); - GX2AccelSync(pScrn); + if (!pGeode->NoAccel) GX2AccelSync(pScrn); GFX(set_video_enable(1)); @@ -1298,7 +1293,7 @@ GX2BlockHandler(int i, pointer blockData, pointer pTimeout, pointer pReadmask) (*pScreen->BlockHandler) (i, blockData, pTimeout, pReadmask); pScreen->BlockHandler = GX2BlockHandler; - GX2AccelSync(pScrn); + if (!pGeode->NoAccel) GX2AccelSync(pScrn); if (pPriv->videoStatus & TIMER_MASK) { UpdateCurrentTime(); if (pPriv->videoStatus & OFF_TIMER) { |