diff --git a/dlls/inetcomm/inetcomm.spec b/dlls/inetcomm/inetcomm.spec index 4db2c7dbbd2..86669c85e03 100644 --- a/dlls/inetcomm/inetcomm.spec +++ b/dlls/inetcomm/inetcomm.spec @@ -59,7 +59,7 @@ @ stub MimeOleDecodeHeader @ stub MimeOleEncodeHeader @ stub MimeOleFileTimeToInetDate -@ stub MimeOleFindCharset +@ stdcall MimeOleFindCharset(str ptr) @ stub MimeOleGenerateCID @ stub MimeOleGenerateFileName @ stub MimeOleGenerateMID @@ -71,7 +71,7 @@ @ stub MimeOleGetCodePageCharset @ stub MimeOleGetCodePageInfo @ stub MimeOleGetContentTypeExt -@ stub MimeOleGetDefaultCharset +@ stdcall MimeOleGetDefaultCharset(ptr) @ stub MimeOleGetExtContentType @ stub MimeOleGetFileExtension @ stub MimeOleGetFileInfo diff --git a/dlls/inetcomm/mimeintl.c b/dlls/inetcomm/mimeintl.c index 0029af8445e..6d37147e2bf 100644 --- a/dlls/inetcomm/mimeintl.c +++ b/dlls/inetcomm/mimeintl.c @@ -547,6 +547,22 @@ HRESULT WINAPI MimeOleGetInternat(IMimeInternational **internat) return S_OK; } +HRESULT WINAPI MimeOleFindCharset(LPCSTR name, LPHCHARSET charset) +{ + IMimeInternational *internat; + HRESULT hr; + + TRACE("(%s, %p)\n", debugstr_a(name), charset); + + hr = MimeOleGetInternat(&internat); + if(SUCCEEDED(hr)) + { + hr = IMimeInternational_FindCharset(internat, name, charset); + IMimeInternational_Release(internat); + } + return hr; +} + HRESULT WINAPI MimeOleGetCharsetInfo(HCHARSET hCharset, LPINETCSETINFO pCsetInfo) { IMimeInternational *internat; @@ -560,5 +576,21 @@ HRESULT WINAPI MimeOleGetCharsetInfo(HCHARSET hCharset, LPINETCSETINFO pCsetInfo hr = IMimeInternational_GetCharsetInfo(internat, hCharset, pCsetInfo); IMimeInternational_Release(internat); } - return S_OK; + return hr; +} + +HRESULT WINAPI MimeOleGetDefaultCharset(LPHCHARSET charset) +{ + IMimeInternational *internat; + HRESULT hr; + + TRACE("(%p)\n", charset); + + hr = MimeOleGetInternat(&internat); + if(SUCCEEDED(hr)) + { + hr = IMimeInternational_GetDefaultCharset(internat, charset); + IMimeInternational_Release(internat); + } + return hr; }