Re: ddraw: Don't release ddraw if a surface is still using it.

2008-06-03 Thread Stefan Dösinger
Am Sonntag, 1. Juni 2008 16:22:08 schrieb Jens Albretsen: > You're right, if we expect every program to behave. > I guess we need a hook for wined3d (if we not already have it) to restore > the state back at process termination, if there is stuff not freed, > changed video modes and such. Nope, tha

Re: ddraw: Don't release ddraw if a surface is still using it.

2008-06-01 Thread Jens Albretsen
> Am Samstag, 31. Mai 2008 17:03:13 schrieb Michael Karcher: >> > Anyway it makes wine stop crashing when programs tries to do something >> > crazy like this. Stefan Dösinger asked me to put a HeapAlloc all >> memory >> > between the two Release's to check if the memory of ddraw object would >> be

Re: ddraw: Don't release ddraw if a surface is still using it.

2008-05-31 Thread Stefan Dösinger
Am Samstag, 31. Mai 2008 17:03:13 schrieb Michael Karcher: > > Anyway it makes wine stop crashing when programs tries to do something > > crazy like this. Stefan Dösinger asked me to put a HeapAlloc all memory > > between the two Release's to check if the memory of ddraw object would be > > corrupt

Re: ddraw: Don't release ddraw if a surface is still using it.

2008-05-31 Thread Michael Karcher
Am Samstag, den 31.05.2008, 15:43 +0200 schrieb Jens Albretsen: > > On wine, there is obviously no problem, as wine keeps the DirectDraw > > object itself alive for longer. On Windows, it is not clear to me that > > the DirectDraw object is not destroyed at the IDirectDraw_Release, the > > only thi

Re: ddraw: Don't release ddraw if a surface is still using it.

2008-05-31 Thread Jens Albretsen
On Saturday 31 May 2008 14:57:25 Michael Karcher wrote: > Am Samstag, den 31.05.2008, 12:08 +0200 schrieb Jens Albretsen: > The patch looks like it would work as advertised, but the following > > snippet in the testcase smells fishy: > > +static unsigned long getRefcount(IUnknown *iface) > > +{ > >

Re: ddraw: Don't release ddraw if a surface is still using it.

2008-05-31 Thread Michael Karcher
Am Samstag, den 31.05.2008, 12:08 +0200 schrieb Jens Albretsen: The patch looks like it would work as advertised, but the following snippet in the testcase smells fishy: > +static unsigned long getRefcount(IUnknown *iface) > +{ > +IUnknown_AddRef(iface); > +return IUnknown_Release(iface);