#include <stdio.h>
#include <stdlib.h>
+extern void msSleep (unsigned long Milliseconds);
+
/* XQueryPointer */
struct uga_drv_shift_mask
/* Can this fail ? */
shmctl (drv->xshm_info.shmid, IPC_RMID, NULL);
- drv->xshm_info.shmaddr = drv->image_data;
- drv->image->data = drv->image_data;
+ drv->xshm_info.shmaddr = (char*)drv->image_data;
+ drv->image->data = (char*)drv->image_data;
if (!XShmAttach (drv->display, &drv->xshm_info))
{
drv->image_data = malloc((drv->width * drv->height) << drv->pixel_shift);
drv->image = XCreateImage (drv->display, drv->visual, drv->depth,
- ZPixmap, 0, drv->image_data,
+ ZPixmap, 0, (char *)drv->image_data,
drv->width, drv->height,
8 << drv->pixel_shift, 0);
}
{
EFI_UGA_PIXEL res;
+ memset (&res, 0, sizeof (EFI_UGA_PIXEL));
/* FIXME: should round instead of truncate. */
res.Red = (val >> drv->r.shift) << drv->r.csize;
res.Green = (val >> drv->g.shift) << drv->g.csize;
return EFI_SUCCESS;
else {
/* EFI is certainly polling. Be CPU-friendly. */
- usleep (50000);
+ msSleep (20);
return EFI_NOT_READY;
}
}
int title_len;
drv = (UGA_IO_PRIVATE *)
- malloc (sizeof (UGA_IO_PRIVATE));
+ calloc (1, sizeof (UGA_IO_PRIVATE));
if (drv == NULL)
return EFI_OUT_OF_RESOURCES;