xserver: Branch 'master' - 3 commits

Eamon Walsh ewalsh at kemper.freedesktop.org
Tue May 19 20:12:59 PDT 2009


 dix/events.c |   13 ++++++-------
 glx/glxext.c |    5 +++++
 2 files changed, 11 insertions(+), 7 deletions(-)

New commits:
commit 22a33a7250f879b8f3eb84176a1dc57027d8cfe4
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Tue May 19 22:45:26 2009 -0400

    glx: Register names for the GLX resource types.
    
    Signed-off-by: Eamon Walsh <ewalsh at tycho.nsa.gov>

diff --git a/glx/glxext.c b/glx/glxext.c
index 6bc7bef..bdacf88 100644
--- a/glx/glxext.c
+++ b/glx/glxext.c
@@ -36,6 +36,7 @@
 #include "glxserver.h"
 #include <windowstr.h>
 #include <propertyst.h>
+#include <registry.h>
 #include "privates.h"
 #include <os.h>
 #include "g_disptab.h"
@@ -317,6 +318,10 @@ void GlxExtensionInit(void)
     __glXDrawableRes = CreateNewResourceType((DeleteType)DrawableGone);
     __glXSwapBarrierRes = CreateNewResourceType((DeleteType)SwapBarrierGone);
 
+    RegisterResourceName(__glXContextRes, "GLXContext");
+    RegisterResourceName(__glXDrawableRes, "GLXDrawable");
+    RegisterResourceName(__glXSwapBarrierRes, "GLXSwapBarrier");
+
     if (!dixRequestPrivate(glxClientPrivateKey, sizeof (__GLXclientState)))
 	return;
     if (!AddCallback (&ClientStateCallback, glxClientCallback, 0))
commit 77e90261d5f91e1170c6e02deb0e3739c24fcfd6
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Tue May 19 19:36:03 2009 -0400

    dix/events.c: Use wClient where appropriate.
    
    Signed-off-by: Eamon Walsh <ewalsh at tycho.nsa.gov>

diff --git a/dix/events.c b/dix/events.c
index b3caec8..fd93376 100644
--- a/dix/events.c
+++ b/dix/events.c
@@ -3989,8 +3989,7 @@ CoreEnterLeaveEvent(
     if ((type == EnterNotify) && (mask & KeymapStateMask))
     {
         xKeymapEvent ke;
-        ClientPtr client = grab ? rClient(grab)
-            : clients[CLIENT_ID(pWin->drawable.id)];
+        ClientPtr client = grab ? rClient(grab) : wClient(pWin);
         if (XaceHook(XACE_DEVICE_ACCESS, client, keybd, DixReadAccess))
             bzero((char *)&ke.map[0], 31);
         else
@@ -4087,7 +4086,7 @@ CoreFocusEvent(DeviceIntPtr dev, int type, int mode, int detail, WindowPtr pWin)
             ((pWin->eventMask | wOtherEventMasks(pWin)) & KeymapStateMask))
     {
         xKeymapEvent ke;
-        ClientPtr client = clients[CLIENT_ID(pWin->drawable.id)];
+        ClientPtr client = wClient(pWin);
         if (XaceHook(XACE_DEVICE_ACCESS, client, dev, DixReadAccess))
             bzero((char *)&ke.map[0], 31);
         else
@@ -5181,7 +5180,7 @@ DeleteWindowFromAnyEvents(WindowPtr pWin, Bool freeResources)
                                    to None
                                  */
 #ifdef NOTDEF
-                                || clients[CLIENT_ID(parent->drawable.id)]->clientGone
+				 || wClient(parent)->clientGone
 #endif
                                 );
                         DoFocusEvents(keybd, pWin, parent, focusEventMode);
commit 3cea176d5abcb0f14eefbdcbe17fed0847524dd4
Author: Eamon Walsh <ewalsh at tycho.nsa.gov>
Date:   Tue May 19 19:30:33 2009 -0400

    xace: Fix a bad device access hook call.
    
    Add a proper access mode, and reverse the logic of the return value.
    Zero ("Success") is returned on success from the hook calls.
    
    Signed-off-by: Eamon Walsh <ewalsh at tycho.nsa.gov>

diff --git a/dix/events.c b/dix/events.c
index 157f9a8..b3caec8 100644
--- a/dix/events.c
+++ b/dix/events.c
@@ -4088,10 +4088,10 @@ CoreFocusEvent(DeviceIntPtr dev, int type, int mode, int detail, WindowPtr pWin)
     {
         xKeymapEvent ke;
         ClientPtr client = clients[CLIENT_ID(pWin->drawable.id)];
-        if (XaceHook(XACE_DEVICE_ACCESS, client, dev, FALSE))
-            memmove((char *)&ke.map[0], (char *)&dev->key->down[1], 31);
-        else
+        if (XaceHook(XACE_DEVICE_ACCESS, client, dev, DixReadAccess))
             bzero((char *)&ke.map[0], 31);
+        else
+            memmove((char *)&ke.map[0], (char *)&dev->key->down[1], 31);
 
         ke.type = KeymapNotify;
         DeliverEventsToWindow(dev, pWin, (xEvent *)&ke, 1,


More information about the xorg-commit mailing list