Ok, Composite extension is semi-working; when no-one asks for redirection,

the server seems to act as before. With RedirectSubwindows (root,
    automatic), the server looks just like a regular X server. Now to go
    rewrite the (currently lame) compositing manager to get some real
    action on the screen.
Some of the fixes here are to make valgrind quiet with various ioctls used
    by kdrive/linux.
Also fixed a bug where fbdev initialization was out of order in fbdev.c and
    smi.c
This commit is contained in:
Keith Packard 2003-11-07 23:29:29 +00:00
commit 1280f79054
5 changed files with 43 additions and 15 deletions

View file

@ -40,11 +40,15 @@ fbdevInitialize (KdCardInfo *card, FbdevPriv *priv)
perror("Error opening /dev/fb0\n");
return FALSE;
}
/* quiet valgrind */
memset (&priv->fix, '\0', sizeof (priv->fix));
if ((k=ioctl(priv->fd, FBIOGET_FSCREENINFO, &priv->fix)) < 0) {
perror("Error with /dev/fb ioctl FIOGET_FSCREENINFO");
close (priv->fd);
return FALSE;
}
/* quiet valgrind */
memset (&priv->var, '\0', sizeof (priv->var));
if ((k=ioctl(priv->fd, FBIOGET_VSCREENINFO, &priv->var)) < 0) {
perror("Error with /dev/fb ioctl FIOGET_VSCREENINFO");
close (priv->fd);
@ -197,12 +201,13 @@ fbdevScreenInit (KdScreenInfo *screen)
if (!scrpriv)
return FALSE;
memset (scrpriv, '\0', sizeof (FbdevScrPriv));
screen->driver = scrpriv;
if (!fbdevScreenInitialize (screen, scrpriv))
{
screen->driver = 0;
xfree (scrpriv);
return FALSE;
}
screen->driver = scrpriv;
return TRUE;
}