Fix swapped Xv dispatch under Xinerama.

Same-endian dispatch was properly calling through the Xinerama wrapping,
but other-endian dispatch wasn't.
This commit is contained in:
Adam Jackson 2007-12-02 14:15:36 -05:00
parent fa47910045
commit 0fff01f566
3 changed files with 379 additions and 536 deletions

File diff suppressed because it is too large Load Diff

View File

@ -1 +1,2 @@
extern void XineramifyXv(void); extern void XineramifyXv(void);
extern void XvResetProcVector(void);

View File

@ -102,8 +102,8 @@ SOFTWARE.
#ifdef PANORAMIX #ifdef PANORAMIX
#include "panoramiX.h" #include "panoramiX.h"
#include "panoramiXsrv.h" #include "panoramiXsrv.h"
#include "xvdisp.h"
#endif #endif
#include "xvdisp.h"
int XvScreenIndex = -1; int XvScreenIndex = -1;
unsigned long XvExtensionGeneration = 0; unsigned long XvExtensionGeneration = 0;
@ -326,12 +326,12 @@ XvCloseScreen(
pScreen->devPrivates[XvScreenIndex].ptr = (pointer)NULL; pScreen->devPrivates[XvScreenIndex].ptr = (pointer)NULL;
return (*pScreen->CloseScreen)(ii, pScreen); return (*pScreen->CloseScreen)(ii, pScreen);
} }
static void static void
XvResetProc(ExtensionEntry* extEntry) XvResetProc(ExtensionEntry* extEntry)
{ {
XvResetProcVector();
} }
_X_EXPORT int _X_EXPORT int