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:
parent
fa47910045
commit
0fff01f566
910
Xext/xvdisp.c
910
Xext/xvdisp.c
File diff suppressed because it is too large
Load Diff
|
@ -1 +1,2 @@
|
||||||
extern void XineramifyXv(void);
|
extern void XineramifyXv(void);
|
||||||
|
extern void XvResetProcVector(void);
|
||||||
|
|
|
@ -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
|
||||||
|
|
Loading…
Reference in New Issue