summaryrefslogtreecommitdiffstats
path: root/xorg/server/xrdpdev/xrdpdev.c
diff options
context:
space:
mode:
authorJay Sorg <jay.sorg@gmail.com>2013-07-17 01:22:59 -0700
committerJay Sorg <jay.sorg@gmail.com>2013-07-17 01:22:59 -0700
commita8c42c51c111f5e9e62e8aaf493258feb2183aec (patch)
tree68ae05ddce3a868041e6c77e452fcf854a98813c /xorg/server/xrdpdev/xrdpdev.c
parente7741d040c62259932f28286acfad6dd908d95ea (diff)
downloadxrdp-proprietary-a8c42c51c111f5e9e62e8aaf493258feb2183aec.tar.gz
xrdp-proprietary-a8c42c51c111f5e9e62e8aaf493258feb2183aec.zip
xorg driver, work on randr
Diffstat (limited to 'xorg/server/xrdpdev/xrdpdev.c')
-rw-r--r--xorg/server/xrdpdev/xrdpdev.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/xorg/server/xrdpdev/xrdpdev.c b/xorg/server/xrdpdev/xrdpdev.c
index 4fad95b6..c68d8700 100644
--- a/xorg/server/xrdpdev/xrdpdev.c
+++ b/xorg/server/xrdpdev/xrdpdev.c
@@ -348,8 +348,15 @@ rdpScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
miSetPixmapDepths();
LLOGLN(0, ("rdpScreenInit: virtualX %d virtualY %d",
pScrn->virtualX, pScrn->virtualY));
- dev->ptr = malloc(dev->width * dev->height * 4);
- if (!fbScreenInit(pScreen, dev->ptr, pScrn->virtualX, pScrn->virtualY,
+
+ dev->depth = 24;
+ dev->paddedWidthInBytes = PixmapBytePad(dev->width, dev->depth);
+ dev->bitsPerPixel = 32;
+ dev->sizeInBytes = dev->paddedWidthInBytes * dev->height;
+ LLOGLN(0, ("pfbMemory bytes %d", dev->sizeInBytes));
+ dev->pfbMemory = (char *) malloc(dev->sizeInBytes);
+ if (!fbScreenInit(pScreen, dev->pfbMemory,
+ pScrn->virtualX, pScrn->virtualY,
pScrn->xDpi, pScrn->yDpi, pScrn->displayWidth,
pScrn->bitsPerPixel))
{