From ce2bd9eb1f426bbef9c9810b7ebce42ca8ab479a Mon Sep 17 00:00:00 2001 From: Hans Leidekker Date: Wed, 17 Oct 2012 11:09:08 +0200 Subject: [PATCH] mapi32: Forward WrapCompressedRTFStream to the registered provider, if any. --- dlls/mapi32/mapi32.spec | 4 ++-- dlls/mapi32/util.c | 13 +++++++++++++ dlls/mapi32/util.h | 1 + 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/dlls/mapi32/mapi32.spec b/dlls/mapi32/mapi32.spec index c84cfd48314..f5a1befea9b 100644 --- a/dlls/mapi32/mapi32.spec +++ b/dlls/mapi32/mapi32.spec @@ -122,8 +122,8 @@ 182 stdcall FBadColumnSet@4(ptr) FBadColumnSet 183 stub RTFSync@12 184 stub RTFSync -185 stub WrapCompressedRTFStream@12 -186 stub WrapCompressedRTFStream +185 stdcall WrapCompressedRTFStream@12(ptr long ptr) WrapCompressedRTFStream +186 stdcall WrapCompressedRTFStream(ptr long ptr) 187 stub __ValidateParameters@8 188 stub __CPPValidateParameters@8 189 stub FBadSortOrderSet@4 diff --git a/dlls/mapi32/util.c b/dlls/mapi32/util.c index 2b1957c1beb..c94e3cf74f4 100644 --- a/dlls/mapi32/util.c +++ b/dlls/mapi32/util.c @@ -935,6 +935,18 @@ HRESULT WINAPI HrQueryAllRows(LPMAPITABLE lpTable, LPSPropTagArray lpPropTags, return MAPI_E_CALL_FAILED; } +/************************************************************************** + * WrapCompressedRTFStream (MAPI32.186) + */ +HRESULT WINAPI WrapCompressedRTFStream(LPSTREAM compressed, ULONG flags, LPSTREAM *uncompressed) +{ + if (mapiFunctions.WrapCompressedRTFStream) + return mapiFunctions.WrapCompressedRTFStream(compressed, flags, uncompressed); + + FIXME("(%p, 0x%08x, %p): stub\n", compressed, flags, uncompressed); + return MAPI_E_NO_SUPPORT; +} + static HMODULE mapi_provider; static HMODULE mapi_ex_provider; @@ -1099,6 +1111,7 @@ void load_mapi_providers(void) mapiFunctions.MAPIOpenLocalFormContainer = (void *) GetProcAddress(mapi_ex_provider, "MAPIOpenLocalFormContainer"); mapiFunctions.OpenStreamOnFile = (void*) GetProcAddress(mapi_ex_provider, "OpenStreamOnFile@24"); mapiFunctions.ScInitMapiUtil = (void*) GetProcAddress(mapi_ex_provider, "ScInitMapiUtil@4"); + mapiFunctions.WrapCompressedRTFStream = (void*) GetProcAddress(mapi_ex_provider, "WrapCompressedRTFStream@12"); } cleanUp: diff --git a/dlls/mapi32/util.h b/dlls/mapi32/util.h index 45828559fe1..e8a524173f7 100644 --- a/dlls/mapi32/util.h +++ b/dlls/mapi32/util.h @@ -59,6 +59,7 @@ typedef struct MAPI_FUNCTIONS { HRESULT (WINAPI *HrQueryAllRows) (LPMAPITABLE, LPSPropTagArray, LPSRestriction, LPSSortOrderSet, LONG, LPSRowSet *); HRESULT (WINAPI *OpenStreamOnFile) (LPALLOCATEBUFFER, LPFREEBUFFER, ULONG, LPWSTR, LPWSTR, LPSTREAM *); SCODE (WINAPI *ScInitMapiUtil) (ULONG ulReserved); + HRESULT (WINAPI *WrapCompressedRTFStream) (LPSTREAM, ULONG, LPSTREAM *); } MAPI_FUNCTIONS; extern MAPI_FUNCTIONS mapiFunctions DECLSPEC_HIDDEN;