summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@openbsd.org>2010-08-29 17:54:19 +0200
committerMark Kettenis <kettenis@openbsd.org>2010-08-29 17:54:19 +0200
commit7a1549678a19c6e94e1ecb3223c74effbd5009d2 (patch)
tree2e0031e48b23fbc3b3f48303db315304f79da24e
parent88a176df8df09812719eb179b293ce4dc851f2e5 (diff)
Don't attempt to stop video on Mach64's without hardware overlay support
Older Mach64 variants don't have hardware overlay support. This is handled properly when the XVideo adapter is initialized (we bail out early), but ATICloseXVideo() unconditionally tries to stop video during screen termination. This causes the server to hang on certain multi-card setups. Fix the issue by checking Block1Base before proceeding with stopping video. Signed-off-by: Mark Kettenis <kettenis@openbsd.org>
-rw-r--r--src/atimach64xv.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/atimach64xv.c b/src/atimach64xv.c
index 21cd890..2c9b812 100644
--- a/src/atimach64xv.c
+++ b/src/atimach64xv.c
@@ -1552,6 +1552,9 @@ ATICloseXVideo
ATIPtr pATI
)
{
+ if (!pATI->Block1Base)
+ return;
+
ATIMach64StopVideo(pScreenInfo, pATI, TRUE);
REGION_UNINIT(pScreen, &pATI->VideoClip);