oleaut32: Adding a NULL to a safearray is supposed to crash

Andreas Mohr andi at rhlx01.fht-esslingen.de
Tue Jul 25 05:54:39 CDT 2006


Hi,

On Tue, Jul 25, 2006 at 10:39:56AM +0100, Robert Shearman wrote:
> Neil Skrypuch wrote:
> 
> >diff --git a/dlls/oleaut32/safearray.c b/dlls/oleaut32/safearray.c
> >index 0eb92da..d3dd5e1 100644
> >--- a/dlls/oleaut32/safearray.c
> >+++ b/dlls/oleaut32/safearray.c
> >@@ -843,12 +843,6 @@ HRESULT WINAPI SafeArrayPutElement(SAFEA
> >  if (!psa || !rgIndices)
> >    return E_INVALIDARG;
> >
> >-  if (!pvData)
> >-  {
> >-    ERR("Invalid pvData would crash under Win32!\n");
> >-    return E_INVALIDARG;
> >-  }
> >-
> >  hRet = SafeArrayLock(psa);
> >
> >  if (SUCCEEDED(hRet))
> > 
> >
> 
> This patch looks good to me and it fixes a number of installers.

So now we went from

"superfluous NULL checks as compared to what Windows does are stupid
since they hide/delay crashes at their real crash site"

to

"superfluous NULL checks as compared to what Windows does are *VERY BAD*
since they can even break many installers due to preventing *expected*
exception handling"


"Nice."

Andreas



More information about the wine-devel mailing list