On 06/15/2015 09:34 PM, Marc-André Lureau wrote:
Add new APIa to put and get an image using shared memory. Instead of only
passing the data pointer, 3 arguments are given: the shmid, the data
offset and the shmaddr.

Bump interface version.
---
  include/GL/internal/dri_interface.h | 18 +++++++++++++++++-
  1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/include/GL/internal/dri_interface.h 
b/include/GL/internal/dri_interface.h
index c827bb6..93f0d41 100644
--- a/include/GL/internal/dri_interface.h
+++ b/include/GL/internal/dri_interface.h
@@ -502,7 +502,7 @@ struct __DRIdamageExtensionRec {
   * SWRast Loader extension.
   */
  #define __DRI_SWRAST_LOADER "DRI_SWRastLoader"
-#define __DRI_SWRAST_LOADER_VERSION 2
+#define __DRI_SWRAST_LOADER_VERSION 3
This breaks egl/x11 swrast because it sets the version of swrastLoader in the following way(src/egl/drivers/dri2/platform_x11.c): dri2_dpy->swrast_loader_extension.base.version = __DRI_SWRAST_LOADER_VERSION; As a quick fix, we can set the version here to 2 and eventually implement the same thing as in glx. (If you don't want to touch the egl code immediately)

Regards,
Boyan Ding

  struct __DRIswrastLoaderExtensionRec {
      __DRIextension base;
@@ -535,6 +535,22 @@ struct __DRIswrastLoaderExtensionRec {
      void (*putImage2)(__DRIdrawable *drawable, int op,
                        int x, int y, int width, int height, int stride,
                        char *data, void *loaderPrivate);
+
+    /**
+     * Put image to drawable
+     *
+     * \since 3
+     */
+    void (*putImageShm)(__DRIdrawable *drawable, int op,
+                        int x, int y, int width, int height, int stride,
+                        int shmid, char *shmaddr, unsigned offset,
+                        void *loaderPrivate);
+    /**
+     * Get image from readable
+     */
+    void (*getImageShm)(__DRIdrawable *readable,
+                        int x, int y, int width, int height,
+                        int shmid, void *loaderPrivate);
  };
/**

_______________________________________________
mesa-dev mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to