http://bugs.freedesktop.org/show_bug.cgi?id=10983

           Summary: The GLX 1.3 protocol packing for glXDestroyPbuffer not 8
                    bytes
           Product: Mesa
           Version: 6.5
          Platform: x86-64 (AMD64)
        OS/Version: Linux (All)
            Status: NEW
          Severity: normal
          Priority: medium
         Component: GLX
        AssignedTo: [email protected]
        ReportedBy: [EMAIL PROTECTED]


254056

The GLX 1.3 protocol packing for glXDestroyPbuffer should have a 
length of 8 bytes: 

1 CARD8 opcode (X assigned) 
1 28 GLX opcode (glXDestroyPbuffer) 
2 2 request length 
4 GLX_PBUFFER glx_pbuffer 

Mesa's request data structure has the correct size: 

typedef struct GLXDestroyPbuffer { 
CARD8 reqType; 
CARD8 glxCode; 
CARD16 length ; 
CARD32 pbuffer ; 
} xGLXDestroyPbufferReq; 

however, the implementation of DestroyPbuffer: 

Mesa-6.5.3/src/glx/x11/glx_pbuffer.c:DestroyPbuffer() 

uses GetReqExtra: 

GetReqExtra( GLXDestroyPbuffer, 4, req ); 

which gets the size of the request (8 bytes), plus an extra 4 
bytes. This causes a bad length error when Mesa's libGL sends 
a DestroyPbuffer request to NVIDIA's GLX implementation. Mesa's 
DestroyPbuffer implementation should instead use GetReq: 

GetReq( GLXDestroyPbuffer, req ); 

to create a request of the correct length.


-- 
Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Mesa3d-dev mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev

Reply via email to