Rebase against bb29a9bf5b42a9848faae749b6d0bd79576f665a.

This commit is contained in:
Sebastian Lackner 2016-01-27 22:50:03 +01:00
parent 44aeaade64
commit 8ca2de22a0
7 changed files with 117 additions and 415 deletions

View File

@ -1,291 +0,0 @@
From 389f6141334056d3d91f004ea6b3e02f25cbea29 Mon Sep 17 00:00:00 2001
From: Dmitry Timoshkov <dmitry@baikal.ru>
Date: Fri, 22 Jan 2016 18:20:29 +0800
Subject: olepro32: Add typelib resource.
Based on a patch by Alistair Leslie-Hughes.
---
dlls/olepro32/Makefile.in | 2 +
dlls/olepro32/olepro.idl | 259 ++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 261 insertions(+)
create mode 100644 dlls/olepro32/olepro.idl
diff --git a/dlls/olepro32/Makefile.in b/dlls/olepro32/Makefile.in
index a6163d1..032fdbd 100644
--- a/dlls/olepro32/Makefile.in
+++ b/dlls/olepro32/Makefile.in
@@ -4,4 +4,6 @@ IMPORTS = oleaut32
C_SRCS = olepro32stubs.c
+IDL_SRCS = olepro.idl
+
RC_SRCS = version.rc
diff --git a/dlls/olepro32/olepro.idl b/dlls/olepro32/olepro.idl
new file mode 100644
index 0000000..5b2fb3e
--- /dev/null
+++ b/dlls/olepro32/olepro.idl
@@ -0,0 +1,259 @@
+/*
+ * Copyright (C) 2003 Robert Shearman
+ * 2005 Huw Davies
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#pragma makedep regtypelib
+
+import "oaidl.idl";
+
+#include <olectl.h>
+
+[
+ uuid(bef6e001-a874-101a-8bba-00aa00300cab),
+ version(2.0),
+ helpstring("Standard OLE Types")
+]
+library StdType
+{
+#if 0 /* FIXME */
+ importlib("stdole32.tlb");
+#endif
+
+ /* typedefs aren't stored in the type library.
+ These type names are known by the type compiler so it
+ doesn't really matter what we define them as. */
+ typedef short VARIANT_BOOL;
+ typedef long BSTR;
+ typedef double CURRENCY;
+ typedef unsigned long HRESULT;
+ typedef void *VARIANT;
+ typedef unsigned long SCODE;
+
+ typedef [uuid(66504301-BE0F-101A-8BBB-00AA00300CAB), public]
+ unsigned long OLE_COLOR;
+
+ typedef [uuid(66504302-BE0F-101A-8BBB-00AA00300CAB), public]
+ long OLE_XPOS_PIXELS;
+
+ typedef [uuid(66504303-BE0F-101A-8BBB-00AA00300CAB), public]
+ long OLE_YPOS_PIXELS;
+
+ typedef [uuid(66504304-BE0F-101A-8BBB-00AA00300CAB), public]
+ long OLE_XSIZE_PIXELS;
+
+ typedef [uuid(66504305-BE0F-101A-8BBB-00AA00300CAB), public]
+ long OLE_YSIZE_PIXELS;
+
+ typedef [uuid(66504306-BE0F-101A-8BBB-00AA00300CAB), public]
+ long OLE_XPOS_HIMETRIC;
+
+ typedef [uuid(66504307-BE0F-101A-8BBB-00AA00300CAB), public]
+ long OLE_YPOS_HIMETRIC;
+
+ typedef [uuid(66504308-BE0F-101A-8BBB-00AA00300CAB), public]
+ long OLE_XSIZE_HIMETRIC;
+
+ typedef [uuid(66504309-BE0F-101A-8BBB-00AA00300CAB), public]
+ long OLE_YSIZE_HIMETRIC;
+
+ typedef [uuid(BF030640-9069-101B-AE2D-08002B2EC713), public]
+ float OLE_XPOS_CONTAINER;
+
+ typedef [uuid(BF030641-9069-101B-AE2D-08002B2EC713), public]
+ float OLE_YPOS_CONTAINER;
+
+ typedef [uuid(BF030642-9069-101B-AE2D-08002B2EC713), public]
+ float OLE_XSIZE_CONTAINER;
+
+ typedef [uuid(BF030643-9069-101B-AE2D-08002B2EC713), public]
+ float OLE_YSIZE_CONTAINER;
+
+ typedef [uuid(66504313-BE0F-101A-8BBB-00AA00300CAB), public]
+ int OLE_HANDLE;
+
+ typedef [uuid(6650430B-BE0F-101A-8BBB-00AA00300CAB), public]
+ VARIANT_BOOL OLE_OPTEXCLUSIVE;
+
+ typedef [uuid(BF030644-9069-101B-AE2D-08002B2EC713), public]
+ VARIANT_BOOL OLE_CANCELBOOL;
+
+ typedef [uuid(BF030645-9069-101B-AE2D-08002B2EC713), public]
+ VARIANT_BOOL OLE_ENABLEDEFAULTBOOL;
+
+ [uuid(6650430A-BE0F-101A-8BBB-00AA00300CAB)]
+ enum OLE_TRISTATE
+ {
+ Unchecked = 0,
+ Checked = 1,
+ Gray = 2
+ };
+
+ typedef [uuid(6650430D-BE0F-101A-8BBB-00AA00300CAB), public]
+ BSTR FONTNAME;
+
+ typedef [uuid(6650430E-BE0F-101A-8BBB-00AA00300CAB), public]
+ CURRENCY FONTSIZE;
+
+ typedef [uuid(6650430F-BE0F-101A-8BBB-00AA00300CAB), public]
+ VARIANT_BOOL FONTBOLD;
+
+ typedef [uuid(66504310-BE0F-101A-8BBB-00AA00300CAB), public]
+ VARIANT_BOOL FONTITALIC;
+
+ typedef [uuid(66504311-BE0F-101A-8BBB-00AA00300CAB), public]
+ VARIANT_BOOL FONTUNDERSCORE;
+
+ typedef [uuid(66504312-BE0F-101A-8BBB-00AA00300CAB), public]
+ VARIANT_BOOL FONTSTRIKETHROUGH;
+
+ [
+ odl,
+ uuid(BEF6E002-A874-101A-8BBA-00AA00300CAB),
+ helpstring("Font Object"),
+ hidden
+ ]
+ interface IFont : IUnknown
+ {
+ [propget] HRESULT Name([out, retval] BSTR *pname);
+ [propput] HRESULT Name([in] BSTR pname);
+ [propget] HRESULT Size([out, retval] CURRENCY *psize);
+ [propput] HRESULT Size([in] CURRENCY psize);
+ [propget] HRESULT Bold([out, retval] VARIANT_BOOL *pbold);
+ [propput] HRESULT Bold([in] VARIANT_BOOL pbold);
+ [propget] HRESULT Italic([out, retval] VARIANT_BOOL *pitalic);
+ [propput] HRESULT Italic([in] VARIANT_BOOL pitalic);
+ [propget] HRESULT Underline([out, retval] VARIANT_BOOL *punderline);
+ [propput] HRESULT Underline([in] VARIANT_BOOL punderline);
+ [propget] HRESULT Strikethrough([out, retval] VARIANT_BOOL *pstrikethrough);
+ [propput] HRESULT Strikethrough([in] VARIANT_BOOL pstrikethrough);
+ [propget] HRESULT Weight([out, retval] short *pweight);
+ [propput] HRESULT Weight([in] short pweight);
+ [propget] HRESULT Charset([out, retval] short *pcharset);
+ [propput] HRESULT Charset([in] short pcharset);
+ [propget] HRESULT hFont([out, retval] OLE_HANDLE *phfont);
+ HRESULT Clone([out] IFont **ppfont);
+ HRESULT IsEqual([in] IFont *pfontOther);
+ HRESULT SetRatio([in] long cyLogical, [in] long cyHimetric);
+ HRESULT AddRefHfont([in] OLE_HANDLE hFont);
+ HRESULT ReleaseHfont([in] OLE_HANDLE hFont);
+ };
+
+ [
+ odl,
+ uuid(BEF6E003-A874-101A-8BBA-00AA00300CAB)
+ ]
+ dispinterface Font
+ {
+ properties:
+ [id(DISPID_FONT_NAME)] BSTR Name;
+ [id(DISPID_FONT_SIZE)] CURRENCY Size;
+ [id(DISPID_FONT_BOLD)] VARIANT_BOOL Bold;
+ [id(DISPID_FONT_ITALIC)] VARIANT_BOOL Italic;
+ [id(DISPID_FONT_UNDER)] VARIANT_BOOL Underline;
+ [id(DISPID_FONT_STRIKE)] VARIANT_BOOL Strikethrough;
+ [id(DISPID_FONT_WEIGHT)] short Weight;
+ [id(DISPID_FONT_CHARSET)] short Charset;
+ methods:
+ }
+
+ typedef [public] Font IFontDisp;
+
+ [
+ uuid(0BE35203-8F91-11CE-9DE3-00AA004BB851)
+ ]
+ coclass StdFont
+ {
+ [default] dispinterface Font;
+ interface IFont;
+ };
+
+ [
+ odl,
+ uuid(7BF80980-BF32-101A-8BBB-00AA00300CAB),
+ helpstring("Picture Object"),
+ hidden
+ ]
+ interface IPicture : IUnknown
+ {
+ [propget] HRESULT Handle([out, retval] OLE_HANDLE *phandle);
+ [propget] HRESULT hPal([out, retval] OLE_HANDLE *phpal);
+ [propget] HRESULT Type([out, retval] short *ptype);
+ [propget] HRESULT Width([out, retval] OLE_XSIZE_HIMETRIC *pwidth);
+ [propget] HRESULT Height([out, retval] OLE_YSIZE_HIMETRIC *pheight);
+ HRESULT Render([in] int hdc,
+ [in] long x,
+ [in] long y,
+ [in] long cx,
+ [in] long cy,
+ [in] OLE_XPOS_HIMETRIC xSrc,
+ [in] OLE_YPOS_HIMETRIC ySrc,
+ [in] OLE_XSIZE_HIMETRIC cxSrc,
+ [in] OLE_YSIZE_HIMETRIC cySrc,
+ [in] void *prcWBounds);
+
+ [propput] HRESULT hPal([in] OLE_HANDLE phpal);
+ [propget] HRESULT CurDC([out, retval] int *phdcOut);
+ HRESULT SelectPicture([in] int hdcIn,
+ [out] int *phdcOut,
+ [out] OLE_HANDLE *phbmpOut);
+ [propget] HRESULT KeepOriginalFormat([out, retval] VARIANT_BOOL *pfkeep);
+ [propput] HRESULT KeepOriginalFormat([in] VARIANT_BOOL pfkeep);
+ HRESULT PictureChanged();
+ HRESULT SaveAsFile([in] void *pstm,
+ [in] VARIANT_BOOL fSaveMemCopy,
+ [out] long *pcbSize);
+ [propget] HRESULT Attributes([out, retval] long *pdwAttr);
+ HRESULT SetHdc([in] OLE_HANDLE hdc);
+ };
+
+ [
+ uuid(7BF80981-BF32-101A-8BBB-00AA00300CAB)
+ ]
+ dispinterface Picture
+ {
+ properties:
+ [id(DISPID_PICT_HANDLE), readonly] OLE_HANDLE Handle;
+ [id(DISPID_PICT_HPAL)] OLE_HANDLE hPal;
+ [id(DISPID_PICT_TYPE), readonly] short Type;
+ [id(DISPID_PICT_WIDTH), readonly] OLE_XSIZE_HIMETRIC Width;
+ [id(DISPID_PICT_HEIGHT), readonly] OLE_YSIZE_HIMETRIC Height;
+ methods:
+ [id(DISPID_PICT_RENDER)]
+ void Render(int hdc,
+ long x,
+ long y,
+ long cx,
+ long cy,
+ OLE_XPOS_HIMETRIC xSrc,
+ OLE_YPOS_HIMETRIC ySrc,
+ OLE_XSIZE_HIMETRIC cxSrc,
+ OLE_YSIZE_HIMETRIC cySrc,
+ void *prcWBounds);
+ };
+
+ typedef [public] Picture IPictureDisp;
+
+ [
+ uuid(0BE35204-8F91-11CE-9DE3-00AA004BB851)
+ ]
+ coclass StdPicture
+ {
+ [default] dispinterface Picture;
+ interface IPicture;
+ };
+}
--
2.6.4

View File

@ -1 +0,0 @@
Fixes: [14617] Add Standard OLE Types typelib to olepro32.dll

View File

@ -51,7 +51,7 @@ usage()
# Get the upstream commit sha
upstream_commit()
{
echo "d178301b723b0a05d8dc0c04b185e39f3ac8ba14"
echo "bb29a9bf5b42a9848faae749b6d0bd79576f665a"
}
# Show version information
@ -242,7 +242,6 @@ patch_enable_all ()
enable_ole32_CoGetApartmentType="$1"
enable_oleaut32_TKIND_COCLASS="$1"
enable_oleaut32_x86_64_Marshaller="$1"
enable_olepro32_Typelib="$1"
enable_openal32_EFX_Extension="$1"
enable_opengl32_Revert_Disable_Ext="$1"
enable_quartz_MediaSeeking_Positions="$1"
@ -296,6 +295,7 @@ patch_enable_all ()
enable_shlwapi_AssocGetPerceivedType="$1"
enable_shlwapi_SHMapHandle="$1"
enable_shlwapi_UrlCombine="$1"
enable_stdole32_idl_Typelib="$1"
enable_stdole32_tlb_SLTG_Typelib="$1"
enable_ucrtbase_Functions="$1"
enable_user32_DeferWindowPos="$1"
@ -866,9 +866,6 @@ patch_enable ()
oleaut32-x86_64_Marshaller)
enable_oleaut32_x86_64_Marshaller="$2"
;;
olepro32-Typelib)
enable_olepro32_Typelib="$2"
;;
openal32-EFX_Extension)
enable_openal32_EFX_Extension="$2"
;;
@ -1028,6 +1025,9 @@ patch_enable ()
shlwapi-UrlCombine)
enable_shlwapi_UrlCombine="$2"
;;
stdole32.idl-Typelib)
enable_stdole32_idl_Typelib="$2"
;;
stdole32.tlb-SLTG_Typelib)
enable_stdole32_tlb_SLTG_Typelib="$2"
;;
@ -5242,24 +5242,6 @@ if test "$enable_oleaut32_x86_64_Marshaller" -eq 1; then
) >> "$patchlist"
fi
# Patchset olepro32-Typelib
# |
# | This patchset fixes the following Wine bugs:
# | * [#14617] Add Standard OLE Types typelib to olepro32.dll
# |
# | Modified files:
# | * dlls/olepro32/Makefile.in, dlls/olepro32/olepro.idl, dlls/stdole32.tlb/std_ole_v1.idl, include/Makefile.in,
# | include/stdole32.idl
# |
if test "$enable_olepro32_Typelib" -eq 1; then
patch_apply olepro32-Typelib/0001-include-Make-stdole32.idl-a-public-component.patch
patch_apply olepro32-Typelib/0002-olepro32-Add-typelib-resource.patch
(
echo '+ { "Dmitry Timoshkov", "include: Make stdole32.idl a public component.", 1 },';
echo '+ { "Dmitry Timoshkov", "olepro32: Add typelib resource.", 1 },';
) >> "$patchlist"
fi
# Patchset openal32-EFX_Extension
# |
# | This patchset fixes the following Wine bugs:
@ -6013,6 +5995,18 @@ if test "$enable_shlwapi_UrlCombine" -eq 1; then
) >> "$patchlist"
fi
# Patchset stdole32.idl-Typelib
# |
# | Modified files:
# | * dlls/stdole32.tlb/std_ole_v1.idl, include/Makefile.in, include/stdole32.idl
# |
if test "$enable_stdole32_idl_Typelib" -eq 1; then
patch_apply stdole32.idl-Typelib/0001-include-Make-stdole32.idl-a-public-component.patch
(
echo '+ { "Dmitry Timoshkov", "include: Make stdole32.idl a public component.", 1 },';
) >> "$patchlist"
fi
# Patchset widl-SLTG_Typelib_Support
# |
# | Modified files:

View File

@ -1,4 +1,4 @@
From f096c2b76bb908a0107daf187adcad6d6ab4723d Mon Sep 17 00:00:00 2001
From 0846dc3670f5f7520a544570627283a4b4e9ced9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Stefan=20D=C3=B6singer?= <stefan@codeweavers.com>
Date: Thu, 20 Dec 2012 13:09:17 +0100
Subject: wined3d: Move the framebuffer into wined3d_state
@ -20,7 +20,7 @@ Subject: wined3d: Move the framebuffer into wined3d_state
13 files changed, 172 insertions(+), 127 deletions(-)
diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c
index 6ecb6fa..cecc75e 100644
index b2ddf55..31f005a 100644
--- a/dlls/wined3d/arb_program_shader.c
+++ b/dlls/wined3d/arb_program_shader.c
@@ -684,7 +684,7 @@ static void shader_arb_load_constants_internal(struct shader_arb_priv *priv,
@ -42,7 +42,7 @@ index 6ecb6fa..cecc75e 100644
}
diff --git a/dlls/wined3d/context.c b/dlls/wined3d/context.c
index 26f56ab..b4fefee 100644
index 0d9de90..cb40148 100644
--- a/dlls/wined3d/context.c
+++ b/dlls/wined3d/context.c
@@ -1511,6 +1511,12 @@ struct wined3d_context *context_create(struct wined3d_swapchain *swapchain,
@ -58,15 +58,15 @@ index 26f56ab..b4fefee 100644
/* Initialize the texture unit mapping to a 1:1 mapping */
for (s = 0; s < MAX_COMBINED_SAMPLERS; ++s)
{
@@ -1839,6 +1845,7 @@ struct wined3d_context *context_create(struct wined3d_swapchain *swapchain,
out:
@@ -1840,6 +1846,7 @@ out:
if (hdc) wined3d_release_dc(swapchain->win_handle, hdc);
device->shader_backend->shader_free_context_data(ret);
device->adapter->fragment_pipe->free_context_data(ret);
+ HeapFree(GetProcessHeap(), 0, ret->current_fb.render_targets);
HeapFree(GetProcessHeap(), 0, ret->free_event_queries);
HeapFree(GetProcessHeap(), 0, ret->free_occlusion_queries);
HeapFree(GetProcessHeap(), 0, ret->free_timestamp_queries);
@@ -1873,6 +1880,7 @@ void context_destroy(struct wined3d_device *device, struct wined3d_context *cont
@@ -1874,6 +1881,7 @@ void context_destroy(struct wined3d_device *device, struct wined3d_context *cont
device->shader_backend->shader_free_context_data(context);
device->adapter->fragment_pipe->free_context_data(context);
@ -74,7 +74,7 @@ index 26f56ab..b4fefee 100644
HeapFree(GetProcessHeap(), 0, context->draw_buffers);
HeapFree(GetProcessHeap(), 0, context->blit_targets);
device_context_remove(device, context);
@@ -2384,7 +2392,7 @@ BOOL context_apply_clear_state(struct wined3d_context *context, const struct win
@@ -2385,7 +2393,7 @@ BOOL context_apply_clear_state(struct wined3d_context *context, const struct win
DWORD rt_mask = 0, *cur_mask;
UINT i;
@ -83,7 +83,7 @@ index 26f56ab..b4fefee 100644
|| rt_count != context->gl_info->limits.buffers)
{
if (!context_validate_rt_config(rt_count, rts, dsv))
@@ -2429,6 +2437,8 @@ BOOL context_apply_clear_state(struct wined3d_context *context, const struct win
@@ -2430,6 +2438,8 @@ BOOL context_apply_clear_state(struct wined3d_context *context, const struct win
rt_mask = context_generate_rt_mask_no_fbo(device,
rt_count ? wined3d_rendertarget_view_get_surface(rts[0]) : NULL);
}
@ -92,7 +92,7 @@ index 26f56ab..b4fefee 100644
}
else if (wined3d_settings.offscreen_rendering_mode == ORM_FBO
&& (!rt_count || wined3d_resource_is_offscreen(rts[0]->resource)))
@@ -2487,7 +2497,7 @@ BOOL context_apply_clear_state(struct wined3d_context *context, const struct win
@@ -2488,7 +2498,7 @@ BOOL context_apply_clear_state(struct wined3d_context *context, const struct win
static DWORD find_draw_buffers_mask(const struct wined3d_context *context, const struct wined3d_device *device)
{
const struct wined3d_state *state = &device->state;
@ -101,7 +101,7 @@ index 26f56ab..b4fefee 100644
struct wined3d_shader *ps = state->shader[WINED3D_SHADER_TYPE_PIXEL];
DWORD rt_mask, rt_mask_bits;
unsigned int i;
@@ -2517,7 +2527,7 @@ static DWORD find_draw_buffers_mask(const struct wined3d_context *context, const
@@ -2518,7 +2528,7 @@ static DWORD find_draw_buffers_mask(const struct wined3d_context *context, const
void context_state_fb(struct wined3d_context *context, const struct wined3d_state *state, DWORD state_id)
{
const struct wined3d_device *device = context->swapchain->device;
@ -110,7 +110,7 @@ index 26f56ab..b4fefee 100644
DWORD rt_mask = find_draw_buffers_mask(context, device);
DWORD *cur_mask;
@@ -2549,6 +2559,8 @@ void context_state_fb(struct wined3d_context *context, const struct wined3d_stat
@@ -2550,6 +2560,8 @@ void context_state_fb(struct wined3d_context *context, const struct wined3d_stat
context_apply_draw_buffers(context, rt_mask);
*cur_mask = rt_mask;
}
@ -119,7 +119,7 @@ index 26f56ab..b4fefee 100644
}
static void context_map_stage(struct wined3d_context *context, DWORD stage, DWORD unit)
@@ -3192,7 +3204,7 @@ BOOL context_apply_draw_state(struct wined3d_context *context, struct wined3d_de
@@ -3193,7 +3205,7 @@ BOOL context_apply_draw_state(struct wined3d_context *context, struct wined3d_de
{
const struct wined3d_state *state = &device->state;
const struct StateEntry *state_table = context->state_table;
@ -575,7 +575,7 @@ index 0afeff9..4e66f01 100644
surface_modify_ds_location(ds, location, ds->ds_current_size.cx, ds->ds_current_size.cy);
diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c
index 6234699..5d7c78a 100644
index 1eb7e6d..56e4bb9 100644
--- a/dlls/wined3d/glsl_shader.c
+++ b/dlls/wined3d/glsl_shader.c
@@ -1627,7 +1627,7 @@ static void shader_generate_glsl_declarations(const struct wined3d_context *cont
@ -588,10 +588,10 @@ index 6234699..5d7c78a 100644
const struct wined3d_shader_lconst *lconst;
const char *prefix;
diff --git a/dlls/wined3d/shader.c b/dlls/wined3d/shader.c
index f2c3e74..f20797b 100644
index 140665e..cc18f88 100644
--- a/dlls/wined3d/shader.c
+++ b/dlls/wined3d/shader.c
@@ -2450,7 +2450,7 @@ void find_ps_compile_args(const struct wined3d_state *state, const struct wined3
@@ -2451,7 +2451,7 @@ void find_ps_compile_args(const struct wined3d_state *state, const struct wined3
memset(args, 0, sizeof(*args)); /* FIXME: Make sure all bits are set. */
if (!gl_info->supported[ARB_FRAMEBUFFER_SRGB] && state->render_states[WINED3D_RS_SRGBWRITEENABLE])
{
@ -788,7 +788,7 @@ index cb3d494..6b348b8 100644
if (FAILED(hr = stateblock_allocate_shader_constants(stateblock)))
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
index 96f5b9f..7784396 100644
index 817ef6f..35bf399 100644
--- a/dlls/wined3d/surface.c
+++ b/dlls/wined3d/surface.c
@@ -3265,8 +3265,8 @@ static HRESULT surface_blt_special(struct wined3d_surface *dst_surface, const RE
@ -815,7 +815,7 @@ index dbf2c8b..73730cd 100644
struct wined3d_context *context;
struct wined3d_surface *front;
diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c
index 5eb1696..86a83c8 100644
index 28a3216..d28994e 100644
--- a/dlls/wined3d/utils.c
+++ b/dlls/wined3d/utils.c
@@ -3776,7 +3776,7 @@ void get_projection_matrix(const struct wined3d_context *context, const struct w
@ -827,7 +827,7 @@ index 5eb1696..86a83c8 100644
state->render_states[WINED3D_RS_ZENABLE] : WINED3D_ZB_FALSE;
float z_scale = zenable ? 2.0f : 0.0f;
float z_offset = zenable ? -1.0f : 0.0f;
@@ -4368,7 +4368,7 @@ void gen_ffp_frag_op(const struct wined3d_context *context, const struct wined3d
@@ -4357,7 +4357,7 @@ void gen_ffp_frag_op(const struct wined3d_context *context, const struct wined3d
unsigned int i;
DWORD ttff;
DWORD cop, aop, carg0, carg1, carg2, aarg0, aarg1, aarg2;
@ -837,10 +837,10 @@ index 5eb1696..86a83c8 100644
const struct wined3d_d3d_info *d3d_info = context->d3d_info;
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index ccc9a93..2ea88c7 100644
index 6ae6072..df9d5fa 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -1164,6 +1164,36 @@ struct wined3d_timestamp_query
@@ -1176,6 +1176,36 @@ struct wined3d_timestamp_query
void context_alloc_timestamp_query(struct wined3d_context *context, struct wined3d_timestamp_query *query) DECLSPEC_HIDDEN;
void context_free_timestamp_query(struct wined3d_timestamp_query *query) DECLSPEC_HIDDEN;
@ -877,7 +877,7 @@ index ccc9a93..2ea88c7 100644
struct wined3d_context
{
const struct wined3d_gl_info *gl_info;
@@ -1178,6 +1208,7 @@ struct wined3d_context
@@ -1190,6 +1220,7 @@ struct wined3d_context
DWORD dirtyArray[STATE_HIGHEST + 1]; /* Won't get bigger than that, a state is never marked dirty 2 times */
DWORD numDirtyEntries;
DWORD isStateDirty[STATE_HIGHEST / (sizeof(DWORD) * CHAR_BIT) + 1]; /* Bitmap to find out quickly if a state is dirty */
@ -885,7 +885,7 @@ index ccc9a93..2ea88c7 100644
struct wined3d_swapchain *swapchain;
struct wined3d_surface *current_rt;
@@ -1280,12 +1311,6 @@ struct wined3d_context
@@ -1292,12 +1323,6 @@ struct wined3d_context
GLuint dummy_arbfp_prog;
};
@ -898,7 +898,7 @@ index ccc9a93..2ea88c7 100644
typedef void (*APPLYSTATEFUNC)(struct wined3d_context *ctx, const struct wined3d_state *state, DWORD state_id);
struct StateEntry
@@ -2008,7 +2033,7 @@ struct wined3d_stream_state
@@ -2020,7 +2045,7 @@ struct wined3d_stream_state
struct wined3d_state
{
DWORD flags;
@ -907,7 +907,7 @@ index ccc9a93..2ea88c7 100644
struct wined3d_vertex_declaration *vertex_declaration;
struct wined3d_stream_output stream_output[MAX_STREAM_OUT];
@@ -2114,7 +2139,6 @@ struct wined3d_device
@@ -2126,7 +2151,6 @@ struct wined3d_device
struct wine_rb_tree samplers;
/* Render Target Support */
@ -915,7 +915,7 @@ index ccc9a93..2ea88c7 100644
struct wined3d_surface *onscreen_depth_stencil;
struct wined3d_rendertarget_view *auto_depth_stencil_view;
@@ -2626,9 +2650,8 @@ struct wined3d_stateblock
@@ -2638,9 +2662,8 @@ struct wined3d_stateblock
void stateblock_init_contained_states(struct wined3d_stateblock *stateblock) DECLSPEC_HIDDEN;
void state_cleanup(struct wined3d_state *state) DECLSPEC_HIDDEN;
@ -927,7 +927,7 @@ index ccc9a93..2ea88c7 100644
void state_unbind_resources(struct wined3d_state *state) DECLSPEC_HIDDEN;
struct wined3d_cs_ops
@@ -2641,7 +2664,6 @@ struct wined3d_cs
@@ -2653,7 +2676,6 @@ struct wined3d_cs
{
const struct wined3d_cs_ops *ops;
struct wined3d_device *device;

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,4 @@
From 5328b553ac1e9b1c57045fc8a0e2964f66a47d25 Mon Sep 17 00:00:00 2001
From 8e605496655d72d832a822ba6adc77fdc2540216 Mon Sep 17 00:00:00 2001
From: Ken Thomases <ken@codeweavers.com>
Date: Sun, 14 Sep 2014 19:47:03 -0500
Subject: Revert "wined3d: Track if a context's hdc is private so we never need
@ -11,7 +11,7 @@ This reverts commit 272873823e9beff91ea1a62845fc7e5f94a9636f.
2 files changed, 9 insertions(+), 15 deletions(-)
diff --git a/dlls/wined3d/context.c b/dlls/wined3d/context.c
index c11dd08..10e484c 100644
index cfd6ec6..ed14aa4 100644
--- a/dlls/wined3d/context.c
+++ b/dlls/wined3d/context.c
@@ -812,7 +812,7 @@ static BOOL context_restore_pixel_format(struct wined3d_context *ctx)
@ -76,7 +76,7 @@ index c11dd08..10e484c 100644
@@ -1446,7 +1445,6 @@ struct wined3d_context *context_create(struct wined3d_swapchain *swapchain,
int swap_interval;
DWORD state;
HDC hdc;
HDC hdc = 0;
- BOOL hdc_is_private = FALSE;
TRACE("swapchain %p, target %p, window %p.\n", swapchain, target, swapchain->win_handle);
@ -110,10 +110,10 @@ index c11dd08..10e484c 100644
ret->needs_set = 1;
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index d5a881f..e9bc39e 100644
index a5e7167..00ecbc4 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -1195,9 +1195,8 @@ struct wined3d_context
@@ -1218,9 +1218,8 @@ struct wined3d_context
DWORD use_immediate_mode_draw : 1;
DWORD rebind_fbo : 1;
DWORD needs_set : 1;