diff --git a/dlls/ole32/marshal.c b/dlls/ole32/marshal.c index dd448e67b69..c03f84aeaa9 100644 --- a/dlls/ole32/marshal.c +++ b/dlls/ole32/marshal.c @@ -453,6 +453,10 @@ CoMarshalInterface( IStream *pStm, REFIID riid, IUnknown *pUnk, TRACE("(%p, %s, %p, %lx, %p, %lx)\n", pStm,debugstr_guid(riid),pUnk,dwDestContext,pvDestContext,mshlflags ); + + if (pUnk == NULL) + return E_INVALIDARG; + STUBMGR_Start(); /* Just to be sure we have one running. */ mid.processid = GetCurrentProcessId(); IUnknown_QueryInterface(pUnk,&IID_IUnknown,(LPVOID*)&pUnknown);