summaryrefslogtreecommitdiffstats
path: root/src/glx
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'mesa_7_5_branch'Brian Paul2009-06-302-1/+3
|\ | | | | | | | | | | Conflicts: src/mesa/vbo/vbo_exec_draw.c
| * glx: plug a leakKristof Ralovich2009-06-301-0/+2
| | | | | | | | | | | | | | | | | | Swrast was missing a free for the culmination of driConcatConfigs. Use free(), not _mesa_free() since we shouldn't be calling any Mesa functions from the GLX code. driConcatConfigs() should probably use regular malloc/free to be consistant but the Mesa functions just wrap the libc functions anyway.
| * glx: fix null pointer dereference segfault (bug 22546)Brian Paul2009-06-301-1/+1
| |
* | Merge branch 'mesa_7_5_branch'Brian Paul2009-06-241-0/+14
|\| | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/mesa/drivers/dri/i915/i915_tex_layout.c src/mesa/drivers/dri/i965/brw_wm_glsl.c src/mesa/drivers/dri/intel/intel_buffer_objects.c src/mesa/drivers/dri/intel/intel_pixel_bitmap.c src/mesa/drivers/dri/intel/intel_pixel_draw.c src/mesa/main/enums.c src/mesa/main/texstate.c src/mesa/vbo/vbo_exec_array.c
| * Disable SGI_swap_control extension for DRI2Owen W. Taylor2009-06-221-1/+3
| | | | | | | | | | | | | | | | | | | | We currently don't have support for SGI_swap_control for direct contexts with DRI2, so disable reporting the extension. Reporting the extension, and then having glXSwapIntervalSGI() "succeed" but do nothing can confuse applications. https://bugs.freedesktop.org/show_bug.cgi?id=22123 (cherry picked from commit 279143c6e808b37c333321b696d80df77f709a04)
| * Also release direct rendering resources in glXDestroyGLXPixmap.Michel Dänzer2009-06-191-0/+14
| | | | | | | | Fixes leak running compiz with direct rendering.
| * GLX: attempt to fix glean makeCurrent test cases.Brian Paul2009-06-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Two parts to this: One we don't keep pointers to possibly freed memory anymore once we unbind the drawables from the context. Brian I need to figure out what the comment you made there, can we get a glean/piglit test so we can fix it properly? If the new gc is the same as the oldGC, we call the unbind even though we just bound it in that function. doh. (cherry picked from master, commit 77506dac8e81e9548a7e9680ce367175fe5747af)
* | dri2: Refresh the fake front contents after glXSwapBuffers().Eric Anholt2009-06-231-0/+7
| | | | | | | | | | | | Bug #19177. Reviewed by: Ian Romanick <[email protected]>
* | GLX: attempt to fix glean makeCurrent test cases.Dave Airlie2009-06-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | Two parts to this: One we don't keep pointers to possibly freed memory anymore once we unbind the drawables from the context. Brian I need to figure out what the comment you made there, can we get a glean/piglit test so we can fix it properly? If the new gc is the same as the oldGC, we call the unbind even though we just bound it in that function. doh.
* | Disable SGI_swap_control extension for DRI2Owen W. Taylor2009-06-121-1/+3
| | | | | | | | | | | | | | | | | | We currently don't have support for SGI_swap_control for direct contexts with DRI2, so disable reporting the extension. Reporting the extension, and then having glXSwapIntervalSGI() "succeed" but do nothing can confuse applications. https://bugs.freedesktop.org/show_bug.cgi?id=22123
* | Thank you git for doing the right thing.Ian Romanick2009-06-031-94/+1
| |
* | Fix compiling indirect.c when GLX_DIRECT_RENDERING is not definedIan Romanick2009-06-031-0/+138
| | | | | | | | | | DO NOT HAND-EDIT GLX PROTOCOL FILES. Seriously. How can you miss the giant comment at the top of the file?
* | glapi: regenerated files for GL_ARB_copy_bufferBrian Paul2009-06-021-60/+0
|/
* Initialize psp->waitX/waitGL for swrast_dri.so.Aidan Thornton2009-05-181-0/+2
| | | | Fixes http://bugs.freedesktop.org/show_bug.cgi?id=21053 .
* glXChooseVisual: Only consider fbconfig if we can get the corresponding visual.Michel Dänzer2009-05-121-16/+17
| | | | | | | This can fail, e.g. when XLIB_SKIP_ARGB_VISUALS=1 is set. See http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=524794 and http://bugs.freedesktop.org/show_bug.cgi?id=21600 .
* glx: replace Xmalloc() calls with Xcalloc()Brian Paul2009-05-042-2/+2
| | | | Fixes a bug where psp->WaitX was uninitialized. Reported by Chris Clayton.
* DRI2: Implement interface for drivers to access DRI2GetBuffersWithFormatIan Romanick2009-04-241-19/+85
| | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kristian Høgsberg <[email protected]>
* DRI2: Implement protocol for DRI2GetBuffersWithFormatIan Romanick2009-04-242-0/+80
| | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kristian Høgsberg <[email protected]>
* glx: added null pointer check in glXGetFBConfigs()Brian Paul2009-04-151-1/+2
| | | | Fixes segfault seen with glxinfo with NVIDIA OpenGL.
* glx: Make glXGetScreenDriver() work for DRI2Adam Jackson2009-04-141-21/+35
|
* DRI2: Assume that there is always a front bufferIan Romanick2009-04-091-7/+3
| | | | | | | | Assume that the front-buffer exists even if the server didn't tell the client that it exists. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kristian Høgsberg <[email protected]>
* DRI2: Provide an interface for drivers to flush front-buffer renderingIan Romanick2009-04-091-0/+10
| | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kristian Høgsberg <[email protected]>
* glx: remove unused local var in determineTextureFormat()Brian Paul2009-04-031-1/+0
|
* glx: MakeCurrent fixes.Thomas Hellstrom2009-04-022-9/+44
| | | | | | | | | | 1) If MakeContextCurrent is called with (NULL, None, None), Don't send the request to the X server if the current context is direct. 2) Return BadMatch in some error cases according to the glx spec. 3) If MakeContextCurrent is called for a context which is current in another thread, return BadAccess according to the glx spec. Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
* Fix compiling indirect.c when GLX_DIRECT_RENDERING is not definedJeremy Huddleston2009-03-311-0/+60
| | | | (cherry picked from commit b65bc1b6cb72df950c2e26446936804dfcdc432c)
* define __builtin_expect for non-gcc compilers in two more glx filesAlan Coopersmith2009-03-252-0/+8
| | | | Signed-off-by: Alan Coopersmith <[email protected]>
* Revert "dri2: Avoid round-tripping on DRI2GetBuffers for the same set of ↵Michel Dänzer2009-03-252-53/+0
| | | | | | | | | | | | | | buffers." This scheme breaks when the display connection doesn't receive ConfigureNotify events. This caused reporoducible problems (cropped / misplaced output) when starting a 3D application in a guest operating system in VMware Workstation. This reverts commit dd1c68f15123a889a3ce9d2afe724e272d163e32. Conflicts: src/glx/x11/dri2_glx.c
* Fix DRI2 accelerated EXT_texture_from_pixmap with GL_RGB format.Eric Anholt2009-03-203-5/+33
| | | | | | | | | | | | | | This requires upgrading the interface so that the argument to glXBindTexImageEXT isn't just dropped on the floor. Note that this only fixes the accelerated path on Intel, as Mesa's texture format support is missing x8r8g8b8 support (right now, GL_RGB textures get uploaded as a8r8gb8, but in this case we're not doing the upload so we can't really work around it that way). Fixes bugs with compositors trying to use shaders that use alpha channels, on windows without a valid alpha channel. Bug #19910 and likely others as well. Reviewed-by: Ian Romanick <[email protected]>
* regenerate glapiRoland Scheidegger2009-03-124-0/+45
|
* mesa: Resurrect SPARC asm code.David S. Miller2009-02-261-86/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This rewrites the sparc GLAPI code so that it's PIC friendly and works with all of the TLS/PTHREADS/64-bit/32-bit combinations properly. As a result we can turn SPARC asm back on. Currently it's only enabled on Linux, as that's the only place where I can test this stuff out. For the moment the cliptest SPARC asm routines are disabled as they are non-working. The problem is that they use register %g7 as a temporary which is where the threading libraries store the thread pointer on SPARC. I will fix that code up in a future change as it's a pretty important routine to optimize. Like x86 we do the runtime patch as a pthread once-invoked initializer in init_glapi_relocs(). Unlike x86, however, our GLAPI stubs on SPARC are just two instruction sequences that branch to a trampoline and put the GLAPI offset into a register. The trampoline is what we run-time patch. The stubs thus all look like: glFoo: ba __glapi_sparc_foo_stub sethi GLAPI_OFFSET(glFOO) * PTR_SIZE, %g3 This actually makes generate_entrypoint() a lot simpler on SPARC. For this case in generate_entrypoint() we generate stubs using a 'call' instead of the 'ba' above to make sure it can reach. In order to get a proper tail call going here, in the unpatched case, we do several tricks. To get the current PC, for example, we save the return address register into a temporary, do a call, save the return address register written by the call to another temporary, then restore the original return address register value. This is to avoid having to allocate a stack frame. This is necessary for PIC address formation. This new GLAPI scheme lets us get rid of the ugly SPARC GLAPI hacks in __glXInitialize() and one_time_init(). Signed-off-by: David S. Miller <[email protected]>
* glx: add support for a reallyFlush() function before swap occurs.Alan Hourihane2009-02-233-0/+27
|
* dri2: support glXWaitX & glXWaitGL by using fake front buffer.Alan Hourihane2009-02-164-6/+81
|
* dri2: Don't crash if the server returns more buffers than expected.Eric Anholt2009-02-101-1/+1
|
* dri2: Initialize variables for the getbuffers round-trip reduction.Eric Anholt2009-02-101-0/+2
| | | | Missed setting the initial values which usually didn't hurt at runtime.
* mesa: merge gallium-0.2 into gallium-master-mergeBrian Paul2009-02-096-48/+8
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge commit 'origin/gallium-0.2' into gallium-master-merge Conflicts: Makefile docs/relnotes-7.4.html docs/relnotes.html src/mesa/drivers/dri/i965/brw_wm.h src/mesa/main/imports.c src/mesa/main/mtypes.h src/mesa/main/texcompress.c src/mesa/main/texenvprogram.c src/mesa/main/version.h src/mesa/vbo/vbo_exec_api.c src/mesa/vbo/vbo_save_draw.c
| * Merge commit 'origin/master' into gallium-0.2Alan Hourihane2009-01-222-24/+32
| |\ | | | | | | | | | | | | | | | | | | Conflicts: windows/VC8/mesa/osmesa/osmesa.vcproj windows/VC8/progs/demos/gears.vcproj windows/VC8/progs/progs.sln
| * \ Merge commit 'origin/master' into gallium-0.2Alan Hourihane2009-01-143-8/+7
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: docs/install.html docs/relnotes-7.3.html src/mesa/shader/slang/slang_codegen.c src/mesa/shader/slang/slang_compile.c src/mesa/shader/slang/slang_emit.c src/mesa/shader/slang/slang_preprocess.c src/mesa/shader/slang/slang_preprocess.h
| * \ \ Merge commit 'origin/master' into gallium-0.2Alan Hourihane2008-12-151-6/+4
| |\ \ \
| * \ \ \ Merge commit 'origin/master' into gallium-0.2Alan Hourihane2008-12-081-1/+0
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: progs/glsl/Makefile
| * \ \ \ \ Merge commit 'origin/master' into gallium-0.2Alan Hourihane2008-11-285-23/+163
| |\ \ \ \ \
| * \ \ \ \ \ Merge commit 'origin/master' into gallium-0.2Brian Paul2008-11-241-0/+1
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: progs/glsl/Makefile
| * \ \ \ \ \ \ Merge commit 'origin/master' into gallium-0.2Keith Whitwell2008-11-154-2/+13
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/mesa/shader/prog_print.c
| * \ \ \ \ \ \ \ Merge commit 'origin/master' into gallium-0.2Brian Paul2008-11-1144-182/+118
| |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/mesa/shader/prog_execute.c src/mesa/shader/slang/library/slang_vertex_builtin_gc.h
| * \ \ \ \ \ \ \ \ Merge commit 'origin/master' into gallium-0.2Alan Hourihane2008-10-271-1/+1
| |\ \ \ \ \ \ \ \ \
| * | | | | | | | | | Update DRI2 implementation according to new specification.Kristian Høgsberg2008-10-157-69/+101
| | | | | | | | | | |
| * | | | | | | | | | Revert pointless reindents to avoid merge conflicts.Kristian Høgsberg2008-10-157-3019/+2893
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Why are we reindenting code that's work in progress...
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glxclient.hRALOVICH, Kristóf2008-10-151-173/+188
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glcontextmodes.hRALOVICH, Kristóf2008-10-151-15/+15
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glxextensions.cRALOVICH, Kristóf2008-10-151-178/+183
| | | | | | | | | | |
| * | | | | | | | | | glx: indent -br -i3 -npcs --no-tabs glxextensions.hRALOVICH, Kristóf2008-10-151-24/+32
| | | | | | | | | | |