Leave IID check to the OleCreateFontIndirect, so that SFCF will handle
all the interfaces that OleCreate.. will.
This commit is contained in:
parent
c1742366f8
commit
e0939a4995
@ -285,6 +285,9 @@ HRESULT WINAPI OleCreateFontIndirect(
|
|||||||
|
|
||||||
*ppvObj = 0;
|
*ppvObj = 0;
|
||||||
|
|
||||||
|
if (lpFontDesc == 0)
|
||||||
|
return NO_ERROR; /* MSDN Oct 2001 */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Try to construct a new instance of the class.
|
* Try to construct a new instance of the class.
|
||||||
*/
|
*/
|
||||||
@ -1652,9 +1655,6 @@ static ULONG WINAPI SFCF_Release(LPCLASSFACTORY iface) {
|
|||||||
static HRESULT WINAPI SFCF_CreateInstance(
|
static HRESULT WINAPI SFCF_CreateInstance(
|
||||||
LPCLASSFACTORY iface,LPUNKNOWN pOuter,REFIID riid,LPVOID *ppobj
|
LPCLASSFACTORY iface,LPUNKNOWN pOuter,REFIID riid,LPVOID *ppobj
|
||||||
) {
|
) {
|
||||||
ICOM_THIS(IClassFactoryImpl,iface);
|
|
||||||
|
|
||||||
if (IsEqualGUID(riid,&IID_IFont)) {
|
|
||||||
FONTDESC fd;
|
FONTDESC fd;
|
||||||
|
|
||||||
WCHAR fname[] = { 'S','y','s','t','e','m',0 };
|
WCHAR fname[] = { 'S','y','s','t','e','m',0 };
|
||||||
@ -1669,10 +1669,7 @@ static HRESULT WINAPI SFCF_CreateInstance(
|
|||||||
fd.fUnderline = 0;
|
fd.fUnderline = 0;
|
||||||
fd.fStrikethrough = 0;
|
fd.fStrikethrough = 0;
|
||||||
return OleCreateFontIndirect(&fd,riid,ppobj);
|
return OleCreateFontIndirect(&fd,riid,ppobj);
|
||||||
}
|
|
||||||
|
|
||||||
FIXME("(%p)->(%p,%s,%p)\n",This,pOuter,debugstr_guid(riid),ppobj);
|
|
||||||
return E_NOINTERFACE;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static HRESULT WINAPI SFCF_LockServer(LPCLASSFACTORY iface,BOOL dolock) {
|
static HRESULT WINAPI SFCF_LockServer(LPCLASSFACTORY iface,BOOL dolock) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user