xvmc: Generate new resource ID in _XIDHandler, otherwise it's invalid.
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
#include <assert.h>
|
||||
#include <X11/Xlib.h>
|
||||
#include <X11/extensions/XvMClib.h>
|
||||
#include <X11/Xlibint.h>
|
||||
#include <pipe/p_context.h>
|
||||
#include <vl_display.h>
|
||||
#include <vl_screen.h>
|
||||
@@ -137,6 +138,7 @@ Status XvMCCreateContext(Display *display, XvPortID port, int surface_type_id, i
|
||||
struct vlScreen *vl_scrn;
|
||||
struct vlContext *vl_ctx;
|
||||
struct pipe_context *pipe;
|
||||
Display *dpy = display;
|
||||
|
||||
assert(display);
|
||||
|
||||
@@ -176,6 +178,7 @@ Status XvMCCreateContext(Display *display, XvPortID port, int surface_type_id, i
|
||||
context->port = port;
|
||||
context->privData = vl_ctx;
|
||||
|
||||
SyncHandle();
|
||||
return Success;
|
||||
}
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
#include <X11/Xlib.h>
|
||||
#include <X11/extensions/Xvlib.h>
|
||||
#include <X11/extensions/XvMC.h>
|
||||
#include <X11/Xlibint.h>
|
||||
|
||||
Status XvMCCreateSubpicture
|
||||
(
|
||||
@@ -13,6 +14,7 @@ Status XvMCCreateSubpicture
|
||||
int xvimage_id
|
||||
)
|
||||
{
|
||||
Display *dpy = display;
|
||||
assert(display);
|
||||
|
||||
if (!context)
|
||||
@@ -38,7 +40,8 @@ Status XvMCCreateSubpicture
|
||||
subpicture->component_order[2] = 0;
|
||||
subpicture->component_order[3] = 0;
|
||||
/* TODO: subpicture->privData = ;*/
|
||||
|
||||
|
||||
SyncHandle();
|
||||
return Success;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#include <assert.h>
|
||||
#include <X11/Xlib.h>
|
||||
#include <X11/extensions/XvMC.h>
|
||||
#include <X11/Xlibint.h>
|
||||
#include <vl_display.h>
|
||||
#include <vl_screen.h>
|
||||
#include <vl_context.h>
|
||||
@@ -61,6 +62,7 @@ Status XvMCCreateSurface(Display *display, XvMCContext *context, XvMCSurface *su
|
||||
{
|
||||
struct vlContext *vl_ctx;
|
||||
struct vlSurface *vl_sfc;
|
||||
Display *dpy = display;
|
||||
|
||||
assert(display);
|
||||
|
||||
@@ -90,6 +92,7 @@ Status XvMCCreateSurface(Display *display, XvMCContext *context, XvMCSurface *su
|
||||
surface->height = context->height;
|
||||
surface->privData = vl_sfc;
|
||||
|
||||
SyncHandle();
|
||||
return Success;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user