Mesa (master): wgl: Implemente SwapLayerBuffers.

Keith Whitwell keithw at kemper.freedesktop.org
Tue May 5 12:17:27 UTC 2009


Module: Mesa
Branch: master
Commit: c6bfb4c55963937f715a5e6a806be23e940b30d3
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=c6bfb4c55963937f715a5e6a806be23e940b30d3

Author: José Fonseca <jfonseca at vmware.com>
Date:   Fri May  1 16:30:08 2009 +0100

wgl: Implemente SwapLayerBuffers.

---

 src/gallium/state_trackers/wgl/icd/stw_icd.c       |    2 +-
 .../state_trackers/wgl/shared/stw_framebuffer.c    |   12 ++++++++++++
 src/gallium/state_trackers/wgl/shared/stw_public.h |    3 +++
 src/gallium/state_trackers/wgl/wgl/stw_wgl.c       |    5 +----
 4 files changed, 17 insertions(+), 5 deletions(-)

diff --git a/src/gallium/state_trackers/wgl/icd/stw_icd.c b/src/gallium/state_trackers/wgl/icd/stw_icd.c
index 3711982..b259ea9 100644
--- a/src/gallium/state_trackers/wgl/icd/stw_icd.c
+++ b/src/gallium/state_trackers/wgl/icd/stw_icd.c
@@ -583,7 +583,7 @@ DrvSwapLayerBuffers(
    if (DBG)
       debug_printf( "%s\n", __FUNCTION__ );
 
-   return FALSE;
+   return stw_swap_layer_buffers( hdc, fuPlanes );
 }
 
 BOOL APIENTRY
diff --git a/src/gallium/state_trackers/wgl/shared/stw_framebuffer.c b/src/gallium/state_trackers/wgl/shared/stw_framebuffer.c
index 4348b8f..f66f429 100644
--- a/src/gallium/state_trackers/wgl/shared/stw_framebuffer.c
+++ b/src/gallium/state_trackers/wgl/shared/stw_framebuffer.c
@@ -237,6 +237,18 @@ stw_swap_buffers(
 }
 
 
+BOOL
+stw_swap_layer_buffers(
+   HDC hdc,
+   UINT fuPlanes )
+{
+   if(fuPlanes & WGL_SWAP_MAIN_PLANE)
+      return stw_swap_buffers(hdc);
+
+   return FALSE;
+}
+
+
 boolean
 stw_framebuffer_init_thread(void)
 {
diff --git a/src/gallium/state_trackers/wgl/shared/stw_public.h b/src/gallium/state_trackers/wgl/shared/stw_public.h
index 39d377c..59d709a 100644
--- a/src/gallium/state_trackers/wgl/shared/stw_public.h
+++ b/src/gallium/state_trackers/wgl/shared/stw_public.h
@@ -50,6 +50,9 @@ BOOL stw_make_current( HDC hdc, UINT_PTR hglrc );
 
 BOOL stw_swap_buffers( HDC hdc );
 
+BOOL
+stw_swap_layer_buffers( HDC hdc, UINT fuPlanes );
+
 PROC stw_get_proc_address( LPCSTR lpszProc );
 
 int stw_pixelformat_describe( HDC hdc,
diff --git a/src/gallium/state_trackers/wgl/wgl/stw_wgl.c b/src/gallium/state_trackers/wgl/wgl/stw_wgl.c
index e06d264..30e42e0 100644
--- a/src/gallium/state_trackers/wgl/wgl/stw_wgl.c
+++ b/src/gallium/state_trackers/wgl/wgl/stw_wgl.c
@@ -100,10 +100,7 @@ wglSwapLayerBuffers(
    HDC hdc,
    UINT fuPlanes )
 {
-   (void) hdc;
-   (void) fuPlanes;
-
-   return FALSE;
+   return stw_swap_layer_buffers( hdc, fuPlanes );
 }
 
 WINGDIAPI PROC APIENTRY




More information about the mesa-commit mailing list