summaryrefslogtreecommitdiffstats
path: root/src/glx
Commit message (Collapse)AuthorAgeFilesLines
* glx: use a block to fix declarations after code warningBrian Paul2011-08-191-7/+9
|
* glx: Don't flush twice if we fallback to dri2CopySubBufferKristian Høgsberg2011-08-181-11/+10
| | | | | | | The flush extensions flush call indicates end of frame and should only be called once per frame. However, in the dri2SwapBuffer fallback path, we call flush and then call dri2CopySubBuffer, which also calls flush. Refactor the code to only call flush once.
* glx: move declarations before codeBrian Paul2011-08-091-3/+7
|
* glx/dri2: Paper over errors in DRI2Connect when indirectChristopher James Halse Rogers2011-08-051-0/+9
| | | | | | | | | | | | DRI2 will throw BadRequest for this when the client is not local, but DRI2 is an implementation detail and not something callers should have to know about. Silently swallow errors in this case, and just propagate the failure through DRI2Connect's return code. Note: This is a candidate for the stable release branches. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=28125 Signed-off-by: Christopher James Halse Rogers <[email protected]>
* glx: Avoid calling __glXInitialize() in driReleaseDrawables().Henri Verbeet2011-07-192-9/+4
| | | | | | | | | | | | | | This fixes a regression introduced by commit a26121f37530619610a78a5fbe5ef87e44047fda (fd.o bug #39219). Since the __glXInitialize() call should be unnecessary anyway, this is probably a nicer fix for the original problem too. NOTE: This is a candidate for the 7.10 and 7.11 branches. Signed-off-by: Henri Verbeet <[email protected]> Reviewed-by: Ian Romanick <[email protected]> Tested-by: [email protected]
* darwin: Include glxhash.c in libGL on darwinJeremy Huddleston2011-07-161-0/+1
| | | | | | Fixes a build regression introduced by 4df137691ee29bb812347fa2c5f19095243ede22 Signed-off-by: Jeremy Huddleston <[email protected]>
* drisw: Fix 24bpp software rendering, take 2Marc Pignat2011-07-151-0/+7
| | | | | | | | This patch add the support for 24bpp in the dri/swrast implementation. See http://bugs.freedesktop.org/show_bug.cgi?id=23525 Signed-off-by: Marc Pignat <marc at pignat.org> Signed-off-by: Brian Paul <[email protected]>
* Rename swrastg_dri to swrast_driMarek Olšák2011-07-141-3/+0
| | | | | I prefer it this way and it has been suggested earlier by others too. Opinions?
* GLX/DRI2: handle swap event swap count wrappingJesse Barnes2011-07-085-2/+108
| | | | | | | | | | | Create a new GLX drawable struct to track client related info, and add a wrap counter to it drawable and track it as we receive events. This allows us to support the full 64 bits of the event structure we pass to the client even though the server only gives us a 32 bit count. Reviewed-by: Michel Dänzer <[email protected]> Reviewed-by: Jeremy Huddleston <[email protected]> Signed-off-by: Jesse Barnes <[email protected]>
* DRI2/GLX: use new swap event typesJesse Barnes2011-07-082-4/+4
| | | | | | | | Use the new swap event type so we get valid SBC values. Reviewed-by: Ian Romanick <[email protected]> Reviewed-by: Jeremy Huddleston <[email protected]> Signed-off-by: Jesse Barnes <[email protected]>
* scons: Actually add src/glx/SConscript.José Fonseca2011-07-011-0/+85
|
* drisw: Remove cargo culting that breaks GLX 1.3 ctorsAdam Jackson2011-06-291-4/+0
| | | | Signed-off-by: Adam Jackson <[email protected]>
* glx: Verify that drawable creation on the client side actually workedAdam Jackson2011-06-292-26/+63
| | | | | | ... and clean up if it didn't. Signed-off-by: Adam Jackson <[email protected]>
* glx: Alias glXFreeContextEXT to glXDestroyContextAdam Jackson2011-06-291-14/+6
| | | | Signed-off-by: Adam Jackson <[email protected]>
* glx: Fix compile.Stéphane Marchesin2011-06-201-1/+1
|
* glx: Bind to our context before __glXSetCurrentContextJeremy Huddleston2011-06-201-9/+16
| | | | | | | We want to bind to our context before calling __glXSetCurrentContext or messing with the gc rect in order to properly handle error conditions. Signed-off-by: Jeremy Huddleston <[email protected]>
* glx: Destroy the old context only after the new one has been boundJeremy Huddleston2011-06-201-7/+7
| | | | | | This fixes a regression introduced by 49d7e48b33264d94e30af6129c281b6acafa9427 Signed-off-by: Jeremy Huddleston <[email protected]>
* glx: Allow a context-specific fallback for glXGetProcAddressJeremy Huddleston2011-06-207-1/+20
| | | | | | | | In applegl, GLX advertises the same extensions provided by OpenGL.framework even if such extensions are not provided by glapi. This allows a client to get access to such API. Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: Use apple_cgl_get_dl_handle() rather than opening a new handleJeremy Huddleston2011-06-171-22/+2
| | | | Signed-off-by: Jeremy Huddleston <[email protected]>
* glx: implement drawable refcounting.Stéphane Marchesin2011-06-176-21/+37
| | | | | | | | | | | | The current dri context unbind logic will leak drawables until the process dies (they will then get released by the GEM code). There are two ways to fix this: either always call driReleaseDrawables every time we unbind a context (but that costs us round trips to the X server at getbuffers() time) or implement proper drawable refcounting. This patch implements the latter. Signed-off-by: Antoine Labour <[email protected]> Signed-off-by: Stéphane Marchesin <[email protected]> Reviewed-by: Adam Jackson <[email protected]>
* apple: Set the glapi dispatch table on context bindJeremy Huddleston2011-06-144-3/+4
| | | | Signed-off-by: Jeremy Huddleston <[email protected]>
* glx: Remove check for gc->vtable->destroyJeremy Huddleston2011-06-131-2/+1
| | | | | | | gc->vtable->destroy is always set and is used unconditionally in other places, so don't bother checking for it first. Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: applegl_destroy_context: Pass along the correct displayJeremy Huddleston2011-06-131-1/+1
| | | | Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: Dead code removalJeremy Huddleston2011-06-132-2/+0
| | | | Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: Request OpenGL 3.2 from OpenGL.framework if availableJeremy Huddleston2011-06-111-0/+15
| | | | Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: Store the CGL API version number for future referenceJeremy Huddleston2011-06-112-5/+5
| | | | Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: Use a struct glx_config * rather than a void * in ↵Jeremy Huddleston2011-06-112-19/+17
| | | | | | apple_visual_create_pfobj Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: Use _glapi_create_table_from_handle to initialize our dispatch tableJeremy Huddleston2011-06-111-1117/+1
| | | | Signed-off-by: Jeremy Huddleston <[email protected]>
* glx: Remove some GLX_USE_APPLEGL guards around glapiJeremy Huddleston2011-06-081-7/+3
| | | | | | Now that we're using glapi, we don't need some GLX_USE_APPLEGL ifdef-foo Signed-off-by: Jeremy Huddleston <[email protected]>
* darwin: Use -fvisibility=hidden to set default symbol visibilityJeremy Huddleston2011-06-082-20/+7
| | | | Signed-off-by: Jeremy Huddleston <[email protected]>
* mesa: merge glapidispatch.h into dispatch.hChia-I Wu2011-06-081-2/+2
| | | | | | | | | glapidispatch.h was located in glapi and shared with mesa core. Because the way it was shared, mesa core must include it indirectly via main/dispatch.h. Now that it is no longer needed by glapi and is located in core mesa, merging it with main/dispatch.h to avoid wrong uses.
* apple: Update dispatch table to current OpenGL specsJeremy Huddleston2011-06-071-25/+233
| | | | | | | This updates the apple dispatch table to match the current glapi. Aliases are still not handled very well. Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: Dead code removalJeremy Huddleston2011-06-0724-52219/+0
| | | | | | Now that we're using glapi, all of this is no longer needed. Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: Remove apple_glx_get_proc_addressJeremy Huddleston2011-06-073-54/+0
| | | | | | Now that we're using glapi, we don't need to special case this. Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: Use glapi rather than reinventing the wheelJeremy Huddleston2011-06-0710-53/+1065
| | | | | | | | | | | | | | | | | | With this change, Apple's libGL is now using glapi rather than implementing its own dispatch. In this implementation, two dispatch tables are created: __ogl_framework_api always points into OpenGL.framework. __applegl_api is the vtable that is used. It points into OpenGL.framework or to local implementations that override / interpose this in OpenGL.framework The initialization for __ogl_framework_api was copied from XQuartz with some modifications and probably still needs further edits to better deal with aliases. This is a good step towards supporting both indirect and direct rendering on darwin. Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: Rename __gl_api to __ogl_framework_apiJeremy Huddleston2011-06-074-14/+14
| | | | | | | In starting the migration to using mapi, rename __gl_api to __ogl_framework_api since it is a vtable for OpenGL.framework Signed-off-by: Jeremy Huddleston <[email protected]>
* dri2: protect dri2FlushFrontBuffer against NULL buffers.Stéphane Marchesin2011-06-061-0/+6
|
* apple: Finish build fixes for applegl_glx.cJeremy Huddleston2011-06-061-3/+2
| | | | | | libGL.dylib now *builds* on darwin. Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: More fixes for compilation failuresJeremy Huddleston2011-06-061-6/+6
| | | | Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: Fix multiple build failures in applegl_glx.cJeremy Huddleston2011-06-052-14/+29
| | | | | | | | It is still not building, but this gets us many steps closer See https://bugs.freedesktop.org/show_bug.cgi?id=29162 Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: Build darwin using applegl rather than indirectJeremy Huddleston2011-06-053-3/+20
| | | | | | | | | | This reverts portions of 6849916170c0275c13510251a7b217c20f2b993e that caused the darwin config to fail to build due to missing implementations in that commit. See https://bugs.freedesktop.org/show_bug.cgi?id=29162 Signed-off-by: Jeremy Huddleston <[email protected]>
* glx: Dead code removalJeremy Huddleston2011-06-051-2/+0
| | | | | | Remove a redundant ifndef GLX_USE_APPLEGL Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: ifdef out come glapi-foo on darwinJeremy Huddleston2011-06-051-0/+4
| | | | Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: Change from XExtDisplayInfo to struct glx_displayJeremy Huddleston2011-06-051-4/+6
| | | | | | | Fixes regression introduced by: ab434f6b7641a64d30725a9ac24929240362d466 and c356f5867f2c1fad7155df538b9affa8dbdcf869 Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: Rename GLXcontextJeremy Huddleston2011-06-051-1/+1
| | | | | | Fixes regression introduced by: c356f5867f2c1fad7155df538b9affa8dbdcf869 Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: Rename _gl_context_modes_find_visual to glx_config_find_visualJeremy Huddleston2011-06-051-1/+1
| | | | | | Fixes regression introduced by: 6ddf66e9230ee862ac341c4767cf6b3b2dd2552b Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: Re-add driContext and do_destroyJeremy Huddleston2011-06-051-0/+5
| | | | | | Fixes regression introduced by: c491e585e43d48a2aeec96ccc4008da6c443fb42 Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: Rename GLXcontextJeremy Huddleston2011-06-054-6/+6
| | | | | | Fixes regression introduced by: c356f5867f2c1fad7155df538b9affa8dbdcf869 Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: Rename __GLcontextModes to struct glx_configJeremy Huddleston2011-06-052-2/+2
| | | | | | Fixes regression introduced by: 6ddf66e9230ee862ac341c4767cf6b3b2dd2552b Signed-off-by: Jeremy Huddleston <[email protected]>
* apple: Rename glcontextmodes.[ch] to glxconfig.[ch]Jeremy Huddleston2011-06-055-5/+5
| | | | | | Fixes regression introduced by: 65d98e25770487456eb3d7eb8ec3ec8272f170b1 Signed-off-by: Jeremy Huddleston <[email protected]>