wined3d: Pass explicit texcoords to depth blt.
diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c
index 2acf5ea..d1c6f91 100644
--- a/dlls/wined3d/arb_program_shader.c
+++ b/dlls/wined3d/arb_program_shader.c
@@ -1788,8 +1788,7 @@
         "PARAM c[1] = { { 1, 0.5 } };\n"
         "MOV result.position, vertex.position;\n"
         "MOV result.color, c[0].x;\n"
-        "MAD result.texcoord[0].y, -vertex.position, c[0], c[0];\n"
-        "MAD result.texcoord[0].x, vertex.position, c[0].y, c[0].y;\n"
+        "MOV result.texcoord[0], vertex.texcoord[0];\n"
         "END\n";
 
     GL_EXTCALL(glGenProgramsARB(1, &program_id));
diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c
index c1f23c7..9e75d8d 100644
--- a/dlls/wined3d/glsl_shader.c
+++ b/dlls/wined3d/glsl_shader.c
@@ -3388,8 +3388,7 @@
         "{\n"
         "    gl_Position = gl_Vertex;\n"
         "    gl_FrontColor = vec4(1.0);\n"
-        "    gl_TexCoord[0].x = (gl_Vertex.x * 0.5) + 0.5;\n"
-        "    gl_TexCoord[0].y = (-gl_Vertex.y * 0.5) + 0.5;\n"
+        "    gl_TexCoord[0] = gl_MultiTexCoord0;\n"
         "}\n"
     };
 
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
index 7017d40..83c419e 100644
--- a/dlls/wined3d/surface.c
+++ b/dlls/wined3d/surface.c
@@ -3979,9 +3979,13 @@
     device->shader_backend->shader_select_depth_blt((IWineD3DDevice *)device, tex_2d);
 
     glBegin(GL_TRIANGLE_STRIP);
+    glTexCoord2f(0.0f, 1.0f);
     glVertex2f(-1.0f, -1.0f);
+    glTexCoord2f(1.0f, 1.0f);
     glVertex2f(1.0f, -1.0f);
+    glTexCoord2f(0.0f, 0.0f);
     glVertex2f(-1.0f, 1.0f);
+    glTexCoord2f(1.0f, 0.0f);
     glVertex2f(1.0f, 1.0f);
     glEnd();