Mesa (master): d3d1x: Use native_surface::present.

Chia-I Wu olv at kemper.freedesktop.org
Wed Nov 3 08:29:26 UTC 2010


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

Author: Chia-I Wu <olv at lunarg.com>
Date:   Wed Nov  3 16:00:47 2010 +0800

d3d1x: Use native_surface::present.

Replace native_surface::flush_frontbuffer and
native_surface::swap_buffers calls by native_surface::present calls.

---

 .../state_trackers/d3d1x/dxgi/src/dxgi_native.cpp  |   14 ++++----------
 1 files changed, 4 insertions(+), 10 deletions(-)

diff --git a/src/gallium/state_trackers/d3d1x/dxgi/src/dxgi_native.cpp b/src/gallium/state_trackers/d3d1x/dxgi/src/dxgi_native.cpp
index e1c3461..c246fc5 100644
--- a/src/gallium/state_trackers/d3d1x/dxgi/src/dxgi_native.cpp
+++ b/src/gallium/state_trackers/d3d1x/dxgi/src/dxgi_native.cpp
@@ -1101,6 +1101,7 @@ struct GalliumDXGISwapChain : public GalliumDXGIObject<IDXGISwapChain, GalliumDX
 		struct pipe_resource* dst;
 		struct pipe_resource* src;
 		struct pipe_surface* dst_surface;
+		enum native_attachment att;
 
 		void* present_cookie;
 		hr = parent->backend->BeginPresent(desc.OutputWindow, &present_cookie, &cur_window, &rect, &rgndata, &preserve_aspect_ratio);
@@ -1221,16 +1222,9 @@ struct GalliumDXGISwapChain : public GalliumDXGIObject<IDXGISwapChain, GalliumDX
 
 		pipe->flush(pipe, PIPE_FLUSH_RENDER_CACHE | PIPE_FLUSH_FRAME, 0);
 
-		if(db)
-		{
-			if(!surface->swap_buffers(surface))
-				return DXGI_ERROR_DEVICE_REMOVED;
-		}
-		else
-		{
-			if(!surface->flush_frontbuffer(surface))
-				return DXGI_ERROR_DEVICE_REMOVED;
-		}
+		att = (db) ? NATIVE_ATTACHMENT_BACK_LEFT : NATIVE_ATTACHMENT_FRONT_LEFT;
+		if(!surface->present(surface, att, FALSE, 0))
+			return DXGI_ERROR_DEVICE_REMOVED;
 
 end_present:
 		parent->backend->EndPresent(desc.OutputWindow, present_cookie);




More information about the mesa-commit mailing list