diff options
Diffstat (limited to 'xorg-server/fb/fballpriv.c')
-rw-r--r-- | xorg-server/fb/fballpriv.c | 29 |
1 files changed, 8 insertions, 21 deletions
diff --git a/xorg-server/fb/fballpriv.c b/xorg-server/fb/fballpriv.c index c6504f915..187d0b068 100644 --- a/xorg-server/fb/fballpriv.c +++ b/xorg-server/fb/fballpriv.c @@ -33,33 +33,20 @@ fbGetScreenPrivateKey(void) return &fbScreenPrivateKeyRec; } -static DevPrivateKeyRec fbGCPrivateKeyRec; -DevPrivateKey -fbGetGCPrivateKey(void) -{ - return &fbGCPrivateKeyRec; -} - -static DevPrivateKeyRec fbWinPrivateKeyRec; -DevPrivateKey -fbGetWinPrivateKey(void) -{ - return &fbWinPrivateKeyRec; -} - Bool -fbAllocatePrivates(ScreenPtr pScreen, DevPrivateKey *pGCKey) +fbAllocatePrivates(ScreenPtr pScreen) { - if (pGCKey) - *pGCKey = &fbGCPrivateKeyRec; + FbScreenPrivPtr pScrPriv; if (!dixRegisterPrivateKey - (&fbGCPrivateKeyRec, PRIVATE_GC, sizeof(FbGCPrivRec))) - return FALSE; - if (!dixRegisterPrivateKey (&fbScreenPrivateKeyRec, PRIVATE_SCREEN, sizeof(FbScreenPrivRec))) return FALSE; - if (!dixRegisterPrivateKey(&fbWinPrivateKeyRec, PRIVATE_WINDOW, 0)) + + pScrPriv = fbGetScreenPrivate(pScreen); + + if (!dixRegisterScreenSpecificPrivateKey (pScreen, &pScrPriv->gcPrivateKeyRec, PRIVATE_GC, sizeof(FbGCPrivRec))) + return FALSE; + if (!dixRegisterScreenSpecificPrivateKey (pScreen, &pScrPriv->winPrivateKeyRec, PRIVATE_WINDOW, 0)) return FALSE; return TRUE; |