summaryrefslogtreecommitdiffstats
path: root/src/glx
Commit message (Collapse)AuthorAgeFilesLines
* Convert all DRI entrypoints to take pointers to __DRI* types.Kristian Høgsberg2007-10-102-27/+23
| | | | | | | | | | The entrypoints take a mix of __DRIscreen * and void * (screen private) arguments (similarly for contexts and drawables). This patch does away with passing the private void pointer and always only passes the fully typed __DRIscreen pointer and always as the first argument. This makes the interface more consistent and increases type safety, and catches a bug where we would pass a screen private to DRIdrawable::getSBC.
* Remove screenConfigs from __DRIscreen.Kristian Høgsberg2007-10-103-3/+14
| | | | | | | | | | | | The screenConfigs field of __DRIscreen points back to the containing __GLXscreenConfigs struct. This is a serious abstraction violation; it assumes that the loader is libGL and that there *is* a __GLXscreenConfigs type in the loader. Using the containerOf macro, we can get from the __DRIscreen pointer to the containing __GLXscreenConfigs struct, at a place in the stack where the above is a valid assumption. Besides, the __DRI* structs shouldn't hold state other than the private pointer.
* Drop mostly unused __DRIid typedef.Kristian Høgsberg2007-10-103-7/+7
|
* Avoid deadlock in GarbageCollectDRIDrawables.Kristian Høgsberg2007-10-101-8/+2
| | | | | | __glXinitialize() can't be called with the GLX lock held. Just pass in the __GLXscreenConfigs pointer so we don't have to look it up in __GLXdisplayPrivate.
* Drop createContext and destroyContext from DRIinterfaceMethods.Kristian Høgsberg2007-10-103-25/+22
| | | | | | | | | | As for createDrawable and destroyDrawable, these functions immediately upon entry to driCreateNewContext and immediately before exit from driDestroyContext. Instead of passing function pointers back and forth just obtain the drm_context_t prior to calling DRIscreen::createNewContext and pass it as a parameter. This change also lets us keep the DRI context XID in the libGL loader only.
* Drop createDrawable and destroyDrawable fron DRIinterfaceMethods.Kristian Høgsberg2007-10-102-31/+16
| | | | | | | | | | | | All the DRI driver did was call the createDrawable callback immediately upon entry to DRIscreen::createNewDrawable to get the drm_drawable_t. We can just call that before calling into the DRI driver and pass the returned drm_drawable_t as an argument to the DRI entry point. Likewise for destroyDrawable. Also, DRIdrawablePrivate::draw isn't used anywhere, and since the driver no longer needs the XID of the drawable we can now drop that.
* Drop __DRInativeDisplay and pass in __DRIscreen pointers instead.Kristian Høgsberg2007-10-105-102/+156
| | | | | | | | | | | | | Many DRI entry points took a __DRInativeDisplay pointer and a screen index as arguments. The only use for the native display pointer was to pass it back to the loader when looking up the __DRIscreen for the given screen index. Instead, let's just pass in the __DRIscreen pointer directly, which let's drop the __DRInativeDisplay type and the getScreen function. The assumption is now that the loader will be able to retrieve context from the __DRIscreen pointer when necessary.
* Add macros to generate CreateNewScreen entrypoint.Kristian Høgsberg2007-10-051-4/+1
|
* Remove XIDs from DRI interface (see #5714).Kristian Høgsberg2007-10-057-94/+179
|
* Pull in the drm hash.Kristian Høgsberg2007-10-053-1/+429
|
* add support for LDFLAGS env varDan Nicholson2007-09-282-2/+2
|
* fixed problem with big glDrawArrays (see bug 12141)Colin McDonald2007-08-271-6/+8
|
* suppress warning about ncon visuals (bug #6689)Roland Scheidegger2007-08-161-2/+5
|
* miniglx: implement GetProcAddressARB in miniglx as an alias for GPADave Airlie2007-06-051-0/+1
|
* get rid of needless static function declarations at top of fileBrian2007-05-171-12/+0
|
* In DestroyPbuffer(), use GetReq() intead of GetReqExtra(). See bug 10983.Brian2007-05-171-1/+1
|
* in __glXGetArrayType() return type, not enabled (bug 10938)Bruce Merry2007-05-141-1/+1
|
* miniglx: fixup use of create windows x and y coordinatesDave Airlie2007-05-081-3/+3
| | | | This makes miniglx take not of the x and y from XCreateWindow
* Makefile clean-ups for miniglx.Brian2007-05-041-8/+13
|
* remove unneeded initialization code (see bug 10569)Brian2007-04-091-6/+1
|
* allocate __GLXdisplayPrivate w/ Xcalloc instead of Xmalloc (bug 10569)Brian2007-04-091-1/+1
|
* Make sure GLX entrypoints are marked PUBLIC.Adam Jackson2007-04-082-4/+5
| | | | Fedora bug #229808.
* fix bug 9823: GL_CLIENT_ATTRIB_STACK_DEPTH query fails for indirect renderingWei Wang2007-04-081-9/+9
|
* fix etags command to find headersBrian2007-04-071-1/+1
|
* Remove SI imports/exports remnants.George Sapountzis2007-04-051-2/+0
|
* glx: minor cosmetic in glcontextmodes.cGeorge Sapountzis2007-04-051-10/+14
| | | | | move memory macros to separate block and unwrap malloc/free for miniglx towards cleaning Mesa core glitches in glx...
* Move glcontextmodes.c to glx.George Sapountzis2007-04-054-9/+587
| | | | | It is no longer linked with DRI drivers, libGL passes function pointers through the DRI interface.
* always print error messages, unless LIBGL_DEBUG=quietBernardo Innocenti2007-03-271-1/+5
|
* fix mem leaksPanagiotis Papadakos2007-02-052-0/+5
|
* break if we removed driver from Drivers list in driDestroyDisplayPanagiotis Papadakos2007-02-051-0/+1
| | | | Else we read memory we just released, in for statement.
* Merge branch 'master' of git+ssh://[email protected]/git/mesa/mesaBrian2007-02-011-3/+19
|\
| * driDestroyDisplay: Fix comment, it is called now.Michel Dänzer2007-02-011-1/+1
| |
| * driDestroyDisplay: Remove Drivers list entry when dlclosing its handle.Michel Dänzer2007-02-011-2/+18
| | | | | | | | | | | | | | | | | | This fixes a regression from commit f81b1dbe374fe446f6ef676e70a72952ffb47d4e: Since then, driDestroyDisplay gets called from __glXFreeDisplayPrivate. It dlcloses the handles associated with the display but fails to remove their references from the Drivers list, so subsequent calls to OpenDriver return a stale handle and an invalid createNewScreenFunc pointer. The attempt to call the latter results in a segfault when running amoeba, e.g.
* | fix mem leak in __glXReportDamage (Panagiotis Papadakos)Brian2007-02-011-0/+1
|/
* regeneratedBrian2007-01-301-25/+25
|
* s/params/pointer/ for glGetVertexAttribPointerBrian2007-01-301-1/+1
|
* Track rename of DamagePost -> DamageAdd.Eric Anholt2007-01-091-1/+1
|
* Add reporting of damage by DRI drivers when the extension support is available.Eric Anholt2007-01-052-1/+68
| | | | | | | | | | | | | | With this, tools like ximagesrc in gstreamer correctly see updates from GL rendering. Support requires that the Xdamage library be current (but will be disabled if not present) plus a new X Server with support for the new XDamagePost request. libGL now has a new interface version, and also links against libXdamage and libXfixes to support it, but backwards compatibility is retained. Currently, all drivers report damage at SwapBuffers time through common code -- front buffer rendering doesn't result in damage being reported. Also, the damage is against the root window, as our drivers don't yet render to backing store when they should (composited environments).
* s/unsigned/size_t/ (Matthias Hopf)Brian2007-01-041-3/+3
|
* Make git ignore files only generated at build time.Michel Dänzer2006-12-061-0/+1
|
* add support to miniglx for updating drawables ..Dave Airlie2006-11-281-2/+14
| | | | requires hacks to DRM to remove MASTER from UPDATE_DRAW and ADD_DRAW
* Don't define as const's to avoid compiler optimization & warning.Alan Hourihane2006-11-211-2/+2
|
* remove drm stuff from libGL, this is now in libdrm 2.3.0Dave Airlie2006-11-081-62/+0
|
* Update gl_API.xml with OpenGL 2.0 functions, regenerate derived files.Brian Paul2006-11-022-5/+3
|
* disable debug printfBrian Paul2006-11-011-3/+4
|
* merge the (rest of) texmem branchKeith Whitwell2006-11-011-3/+66
|
* Fix bug #8563.Ian Romanick2006-10-161-1/+1
| | | | | | | Fixes a GLX protocol problem when binding an indirect rendering context after a direct rendering context. In this case, the oldContetTag sent to the server should be None, but the currectContextTag stored in the direct rendering context (i.e., -1) was sent instead.
* Fix dumb build errors.Ian Romanick2006-10-131-0/+1
| | | | | | I always build with -DGLX_USE_TLS, so I never hit these paths. glapi.h is required in some places because _glapi_Dispatch is declared there, but _glapi_tls_Dispatch is declared in glthread.h.
* include glapi.h to fix broken buildBrian Paul2006-10-131-0/+1
|
* Fix bug #4681.Ian Romanick2006-10-114-152/+571
| | | | | | | | | | | | | | | | | glDeleteTextures and glDeleteTexturesEXT were erroneously listed as aliases of each other. For anything /except/ GLX protocol they are aliases. This set of changes allows functions that are functionally identical but have different GLX protocol to be listed as aliases. When building with GLX_INDIRECT_RENDERING set, different static functions are used. These functions determine whether the current context is direct rendering or not. If the context is direct rendering, the aliased function (e.g., glDeleteTextures in the case of glDeleteTexturesEXT) is called. If the context is not direct rendering, the correct GLX protocol is sent. For a deeper explanation of what is changed, please see: http://dri.freedesktop.org/wiki/PartiallyAliasedFunctions