mirror of
https://github.com/reactos/wine.git
synced 2024-11-29 14:40:56 +00:00
mshtml: Use a helper function for QueryService calls in hlink_frame_navigate.
This commit is contained in:
parent
a0f0476707
commit
6363796e09
@ -125,6 +125,20 @@ void set_statustext(HTMLDocumentObj* doc, INT id, LPCWSTR arg)
|
|||||||
heap_free(p);
|
heap_free(p);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
HRESULT do_query_service(IUnknown *unk, REFGUID guid_service, REFIID riid, void **ppv)
|
||||||
|
{
|
||||||
|
IServiceProvider *sp;
|
||||||
|
HRESULT hres;
|
||||||
|
|
||||||
|
hres = IUnknown_QueryInterface(unk, &IID_IServiceProvider, (void**)&sp);
|
||||||
|
if(FAILED(hres))
|
||||||
|
return hres;
|
||||||
|
|
||||||
|
hres = IServiceProvider_QueryService(sp, guid_service, riid, ppv);
|
||||||
|
IServiceProvider_Release(sp);
|
||||||
|
return hres;
|
||||||
|
}
|
||||||
|
|
||||||
HINSTANCE get_shdoclc(void)
|
HINSTANCE get_shdoclc(void)
|
||||||
{
|
{
|
||||||
static const WCHAR wszShdoclc[] =
|
static const WCHAR wszShdoclc[] =
|
||||||
|
@ -828,6 +828,8 @@ void do_ns_command(HTMLDocument*,const char*,nsICommandParams*) DECLSPEC_HIDDEN;
|
|||||||
void update_doc(HTMLDocument*,DWORD) DECLSPEC_HIDDEN;
|
void update_doc(HTMLDocument*,DWORD) DECLSPEC_HIDDEN;
|
||||||
void update_title(HTMLDocumentObj*) DECLSPEC_HIDDEN;
|
void update_title(HTMLDocumentObj*) DECLSPEC_HIDDEN;
|
||||||
|
|
||||||
|
HRESULT do_query_service(IUnknown*,REFGUID,REFIID,void**) DECLSPEC_HIDDEN;
|
||||||
|
|
||||||
/* editor */
|
/* editor */
|
||||||
void init_editor(HTMLDocument*) DECLSPEC_HIDDEN;
|
void init_editor(HTMLDocument*) DECLSPEC_HIDDEN;
|
||||||
void handle_edit_event(HTMLDocument*,nsIDOMEvent*) DECLSPEC_HIDDEN;
|
void handle_edit_event(HTMLDocument*,nsIDOMEvent*) DECLSPEC_HIDDEN;
|
||||||
|
@ -1981,7 +1981,6 @@ HRESULT hlink_frame_navigate(HTMLDocument *doc, LPCWSTR url, nsChannel *nschanne
|
|||||||
{
|
{
|
||||||
IHlinkFrame *hlink_frame;
|
IHlinkFrame *hlink_frame;
|
||||||
nsChannelBSC *callback;
|
nsChannelBSC *callback;
|
||||||
IServiceProvider *sp;
|
|
||||||
IBindCtx *bindctx;
|
IBindCtx *bindctx;
|
||||||
IMoniker *mon;
|
IMoniker *mon;
|
||||||
IHlink *hlink;
|
IHlink *hlink;
|
||||||
@ -1989,14 +1988,8 @@ HRESULT hlink_frame_navigate(HTMLDocument *doc, LPCWSTR url, nsChannel *nschanne
|
|||||||
|
|
||||||
*cancel = FALSE;
|
*cancel = FALSE;
|
||||||
|
|
||||||
hres = IOleClientSite_QueryInterface(doc->doc_obj->client, &IID_IServiceProvider,
|
hres = do_query_service((IUnknown*)doc->doc_obj->client, &IID_IHlinkFrame, &IID_IHlinkFrame,
|
||||||
(void**)&sp);
|
|
||||||
if(FAILED(hres))
|
|
||||||
return S_OK;
|
|
||||||
|
|
||||||
hres = IServiceProvider_QueryService(sp, &IID_IHlinkFrame, &IID_IHlinkFrame,
|
|
||||||
(void**)&hlink_frame);
|
(void**)&hlink_frame);
|
||||||
IServiceProvider_Release(sp);
|
|
||||||
if(FAILED(hres))
|
if(FAILED(hres))
|
||||||
return S_OK;
|
return S_OK;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user