diff options
author | Dave Airlie <airlied@linux.ie> | 2005-12-23 01:50:04 +0000 |
---|---|---|
committer | Dave Airlie <airlied@linux.ie> | 2005-12-23 01:50:04 +0000 |
commit | 7fb521e80d6e2c05e9475e74fbf80bfbe74cda95 (patch) | |
tree | 7a455fdebacdf07d337ee750f1bb81ae4b8af891 | |
parent | c88a3145d057ab72466a3ea8b789bf419e4efc33 (diff) |
from davidr's tree update some fixes
-rw-r--r-- | hw/xgl/xglcopy.c | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/hw/xgl/xglcopy.c b/hw/xgl/xglcopy.c index b514ba57f..c11bb25c1 100644 --- a/hw/xgl/xglcopy.c +++ b/hw/xgl/xglcopy.c @@ -41,11 +41,19 @@ xglCopy (DrawablePtr pSrc, if (!nBox) return TRUE; - if (!xglPrepareTarget (pDst)) - return FALSE; - - if (!xglSyncSurface (pSrc)) - return FALSE; + if (xglPrepareTarget (pDst)) + { + if (!xglSyncSurface (pSrc)) + return FALSE; + } + else + { + if (!xglPrepareTarget (pSrc)) + return FALSE; + + if (!xglSyncSurface (pDst)) + return FALSE; + } XGL_GET_DRAWABLE (pSrc, src, srcXoff, srcYoff); XGL_GET_DRAWABLE (pDst, dst, dstXoff, dstYoff); |