Module: wine
Branch: refs/heads/master
Commit: a874487f9544da03f5354b3e7aa00f813f68a90d
URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=a874487f9544da03f5354b3…
Author: Roderick Colenbrander <thunderbird2k(a)gmx.net>
Date: Tue Feb 7 16:51:08 2006 +0100
d3d8: fbconfig fix.
Right now the ActiveRender code in D3D8 requests a GLX_DEPTH_SIZE of
32 in case the direct3d color format also has a depth of 32. As
verified on various linux drivers (Ati fglrx, Ati (dri) and Nvidia)
the color depth needs to be 24. This patch sets the depth to 24 and it
fixes bugs in 3dmark2001 and other programs.
---
dlls/d3d8/device.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/dlls/d3d8/device.c b/dlls/d3d8/device.c
index 6710164..25afed7 100644
--- a/dlls/d3d8/device.c
+++ b/dlls/d3d8/device.c
@@ -4667,7 +4667,7 @@ HRESULT WINAPI IDirect3DDevice8Impl_Acti
break;
case D3DFMT_D32:
- PUSH2(GLX_DEPTH_SIZE, 32);
+ PUSH2(GLX_DEPTH_SIZE, 24);
break;
default:
Module: wine
Branch: refs/heads/master
Commit: b0218db90a8b3c81ecb6529c089acc0074cd2f9c
URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=b0218db90a8b3c81ecb6529…
Author: Robert Shearman <rob(a)codeweavers.com>
Date: Tue Feb 7 16:26:23 2006 +0100
oleaut32: Fix circular reference count in Typelib marshaler.
The current method of handling typelib-marshaled interfaces that derive
from IDispatch is to query for an IDispatch pointer from the proxy, but
this causes a circular reference count.
Fix the reference counting by loading using the IRpcProxyBuffer of
IDispatch without an outer unknown, so that the lifetime is controlled
by the typelib-marshaled interface's proxy. The IDispatch proxy now
shares the same channel as the typelib-marshaled interface, so fix up
the stub side to handle this.
---
dlls/oleaut32/tmarshal.c | 153 +++++++++++++++++++++++++++++-----------------
1 files changed, 95 insertions(+), 58 deletions(-)
Diff: http://source.winehq.org/git/?p=wine.git;a=commitdiff;h=b0218db90a8b3c81ecb…
Module: wine
Branch: refs/heads/master
Commit: fd81d9c56e2f6368ff30e6c095050a2840558151
URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=fd81d9c56e2f6368ff30e6c…
Author: Robert Shearman <rob(a)codeweavers.com>
Date: Tue Feb 7 16:26:02 2006 +0100
oleaut32: Handle VT_INT in serialize_param and deserialize_param.
---
dlls/oleaut32/tmarshal.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/dlls/oleaut32/tmarshal.c b/dlls/oleaut32/tmarshal.c
index 9428995..1e1cea6 100644
--- a/dlls/oleaut32/tmarshal.c
+++ b/dlls/oleaut32/tmarshal.c
@@ -517,6 +517,7 @@ serialize_param(
return hres;
case VT_BOOL:
case VT_ERROR:
+ case VT_INT:
case VT_UINT:
case VT_I4:
case VT_R4:
@@ -841,6 +842,7 @@ deserialize_param(
case VT_ERROR:
case VT_BOOL:
case VT_I4:
+ case VT_INT:
case VT_UINT:
case VT_R4:
case VT_UI4:
Module: wine
Branch: refs/heads/master
Commit: ec5d73910c754ba9cadc6724d217fb6779545149
URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=ec5d73910c754ba9cadc672…
Author: Robert Shearman <rob(a)codeweavers.com>
Date: Tue Feb 7 16:25:42 2006 +0100
oleaut32: Release interfaces when told to.
Make the VT_DISPATCH and VT_UNKNOWN cases of serialize_param match the
TKIND_INTERFACE case below by releasing their respective interfaces as
necessary.
---
dlls/oleaut32/tmarshal.c | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/dlls/oleaut32/tmarshal.c b/dlls/oleaut32/tmarshal.c
index 7c3bddc..9428995 100644
--- a/dlls/oleaut32/tmarshal.c
+++ b/dlls/oleaut32/tmarshal.c
@@ -668,11 +668,15 @@ serialize_param(
if (debugout) TRACE_(olerelay)("unk(0x%lx)",*arg);
if (writeit)
hres = _marshal_interface(buf,&IID_IUnknown,(LPUNKNOWN)*arg);
+ if (dealloc)
+ IUnknown_Release((LPUNKNOWN)*arg);
return hres;
case VT_DISPATCH:
if (debugout) TRACE_(olerelay)("idisp(0x%lx)",*arg);
if (writeit)
hres = _marshal_interface(buf,&IID_IDispatch,(LPUNKNOWN)*arg);
+ if (dealloc)
+ IUnknown_Release((LPUNKNOWN)*arg);
return hres;
case VT_VOID:
if (debugout) TRACE_(olerelay)("<void>");