Aric Cyr wrote:
Al Tobey <tobert <at> gmail.com> writes:
Here is the new patch. I did some additional testing and couldn't get the same app to fail on that function again. It still works with this new patch, so I'm assuming for now that it's correct. Anyways, thanks again.
Hi Al,
Almost got it this time :) You should be checking that pParameters is not NULL, not &This->createParms. Note that if This is not-NULL, &This->creatParms will be not null as well since you are just getting the address of a struct. Also on failure, according to MSDN, you shoudl be returning D3DERR_INVALIDCALL not OUTOFVIDEOMEMORY.
Probably the following would be most correct:
{ IWineD3DDeviceImpl *This = (IWineD3DDeviceImpl *) iface;
if (This == NULL || pParameters == NULL)
This should never be NULL as where did the application get the address of the function from?