diff options
Diffstat (limited to 'core/src/fxge/win32/fx_win32_dwrite.cpp')
-rw-r--r-- | core/src/fxge/win32/fx_win32_dwrite.cpp | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/core/src/fxge/win32/fx_win32_dwrite.cpp b/core/src/fxge/win32/fx_win32_dwrite.cpp index 65a35d86a1..889a5684b7 100644 --- a/core/src/fxge/win32/fx_win32_dwrite.cpp +++ b/core/src/fxge/win32/fx_win32_dwrite.cpp @@ -282,9 +282,10 @@ HRESULT STDMETHODCALLTYPE CDwFontFileStream::QueryInterface(REFIID iid, void** p *ppvObject = this; AddRef(); return S_OK; + } else { + *ppvObject = NULL; + return E_NOINTERFACE; } - *ppvObject = NULL; - return E_NOINTERFACE; } ULONG STDMETHODCALLTYPE CDwFontFileStream::AddRef() { @@ -305,14 +306,16 @@ HRESULT STDMETHODCALLTYPE CDwFontFileStream::ReadFileFragment( OUT void** fragmentContext ) { - if (fileOffset <= resourceSize_ && fragmentSize <= resourceSize_ - fileOffset) { + if (fileOffset <= resourceSize_ && + fragmentSize <= resourceSize_ - fileOffset) { *fragmentStart = static_cast<uint8_t const*>(resourcePtr_) + static_cast<size_t>(fileOffset); *fragmentContext = NULL; return S_OK; + } else { + *fragmentStart = NULL; + *fragmentContext = NULL; + return E_FAIL; } - *fragmentStart = NULL; - *fragmentContext = NULL; - return E_FAIL; } void STDMETHODCALLTYPE CDwFontFileStream::ReleaseFileFragment(void* fragmentContext) { @@ -338,9 +341,10 @@ HRESULT STDMETHODCALLTYPE CDwFontFileLoader::QueryInterface(REFIID iid, void** p *ppvObject = this; AddRef(); return S_OK; + } else { + *ppvObject = NULL; + return E_NOINTERFACE; } - *ppvObject = NULL; - return E_NOINTERFACE; } ULONG STDMETHODCALLTYPE CDwFontFileLoader::AddRef() { |