#include <stdlib.h>
#include <assert.h>
#include <string.h>
+#include <stdint.h>
#include <sys/types.h> // for pid_t
#include "qemu-common.h"
#define MAX_CLIENT_STATE_STACK_SIZE 16
-typedef void *ClientGLXDrawable;
+typedef uint32_t ClientGLXDrawable;
typedef struct GLState GLState;
typedef struct QGloSurface {
GLState *glstate;
GloSurface *surface;
- ClientGLXDrawable *client_drawable;
+ ClientGLXDrawable client_drawable;
int type; /* window, pixmap or pbuffer */
int ready;
int status;
#include "server_stub.c"
-//typedef void *ClientGLXDrawable;
static inline ClientGLXDrawable to_drawable(arg_t arg)
{
#ifdef TARGET_X86_64
exit(-1);
}
#endif
- return (void *) (unsigned long) arg;
+ return (ClientGLXDrawable)arg;
}
/* ---- */
qsurface->surface, qsurface->type);
- ret.i = client_drawable;
+ ret.i = (int)client_drawable;
}
break;
qsurface->surface = glo_surface_create(width, height, context);
/* Use GloSurface handler as no input client_drawable, and
* keep only low 32bit of handler on x86_64 host. */
- qsurface->client_drawable = (int)qsurface->surface;
+ qsurface->client_drawable = (ClientGLXDrawable)(long)qsurface->surface;
qsurface->type = SURFACE_PBUFFER;
qsurface->status = SURFACE_PENDING;
/* qsurface->ref = 1;*/