Module: wine Branch: master Commit: 5a04f526ad21ccf5bb4d3f323805172003cdaadf URL: http://source.winehq.org/git/wine.git/?a=commit;h=5a04f526ad21ccf5bb4d3f3238...
Author: Jacek Caban jacek@codeweavers.com Date: Sun Mar 23 02:16:03 2008 +0100
mshtml: Added new nsChannelBSC type.
---
dlls/mshtml/mshtml_private.h | 19 +++++++++++-------- dlls/mshtml/navigate.c | 6 +++--- dlls/mshtml/nsio.c | 4 ++-- dlls/mshtml/persist.c | 12 ++++++------ 4 files changed, 22 insertions(+), 19 deletions(-)
diff --git a/dlls/mshtml/mshtml_private.h b/dlls/mshtml/mshtml_private.h index 2936f76..a21eee3 100644 --- a/dlls/mshtml/mshtml_private.h +++ b/dlls/mshtml/mshtml_private.h @@ -54,6 +54,7 @@ typedef struct HTMLDOMNode HTMLDOMNode; typedef struct ConnectionPoint ConnectionPoint; typedef struct BSCallback BSCallback; +typedef struct BSCallback nsChannelBSC;
typedef struct { const IHTMLWindow2Vtbl *lpHTMLWindow2Vtbl; @@ -138,7 +139,7 @@ struct HTMLDocument {
IOleUndoManager *undomgr;
- BSCallback *bscallback; + nsChannelBSC *bscallback; IMoniker *mon; LPOLESTR url; struct list bindings; @@ -211,7 +212,7 @@ struct NSContainer {
HWND hwnd;
- BSCallback *bscallback; /* hack */ + nsChannelBSC *bscallback; /* hack */ HWND reset_focus; /* hack */ };
@@ -428,14 +429,16 @@ void get_editor_controller(NSContainer*); void init_nsevents(NSContainer*); nsresult get_nsinterface(nsISupports*,REFIID,void**);
-BSCallback *create_bscallback(IMoniker*); -HRESULT start_binding(HTMLDocument*,BSCallback*,IBindCtx*); -HRESULT load_stream(BSCallback*,IStream*); -void set_document_bscallback(HTMLDocument*,BSCallback*); +void set_document_bscallback(HTMLDocument*,nsChannelBSC*); void set_current_mon(HTMLDocument*,IMoniker*); +HRESULT start_binding(HTMLDocument*,BSCallback*,IBindCtx*); + +HRESULT bind_mon_to_buffer(HTMLDocument*,IMoniker*,void**);
-void channelbsc_set_channel(BSCallback*,nsChannel*,nsIStreamListener*,nsISupports*); -IMoniker *get_channelbsc_mon(BSCallback*); +nsChannelBSC *create_channelbsc(IMoniker*); +HRESULT channelbsc_load_stream(nsChannelBSC*,IStream*); +void channelbsc_set_channel(nsChannelBSC*,nsChannel*,nsIStreamListener*,nsISupports*); +IMoniker *get_channelbsc_mon(nsChannelBSC*);
IHTMLSelectionObject *HTMLSelectionObject_Create(HTMLDocument*,nsISelection*); IHTMLTxtRange *HTMLTxtRange_Create(HTMLDocument*,nsIDOMRange*); diff --git a/dlls/mshtml/navigate.c b/dlls/mshtml/navigate.c index e3ac735..ebeca3d 100644 --- a/dlls/mshtml/navigate.c +++ b/dlls/mshtml/navigate.c @@ -660,7 +660,7 @@ static const IServiceProviderVtbl ServiceProviderVtbl = { BSCServiceProvider_QueryService };
-BSCallback *create_bscallback(IMoniker *mon) +BSCallback *create_channelbsc(IMoniker *mon) { BSCallback *ret = heap_alloc(sizeof(BSCallback));
@@ -789,7 +789,7 @@ void hlink_frame_navigate(HTMLDocument *doc, IHlinkFrame *hlink_frame, IHlink *hlink; HRESULT hr;
- callback = create_bscallback(NULL); + callback = create_channelbsc(NULL);
if(post_data_stream) { parse_post_data(post_data_stream, &callback->headers, &callback->post_data, @@ -897,7 +897,7 @@ void set_document_bscallback(HTMLDocument *doc, BSCallback *callback) } }
-HRESULT load_stream(BSCallback *bscallback, IStream *stream) +HRESULT channelbsc_load_stream(BSCallback *bscallback, IStream *stream) { HRESULT hres;
diff --git a/dlls/mshtml/nsio.c b/dlls/mshtml/nsio.c index 8c996b8..b45bb08 100644 --- a/dlls/mshtml/nsio.c +++ b/dlls/mshtml/nsio.c @@ -727,7 +727,7 @@ static nsresult async_open_doc_uri(nsChannel *This, NSContainer *container, static nsresult async_open(nsChannel *This, NSContainer *container, nsIStreamListener *listener, nsISupports *context) { - BSCallback *bscallback; + nsChannelBSC *bscallback; IMoniker *mon = NULL; nsresult nsres; task_t *task; @@ -769,7 +769,7 @@ static nsresult async_open(nsChannel *This, NSContainer *container, nsIStreamLis if(FAILED(hres)) return NS_ERROR_UNEXPECTED;
- bscallback = create_bscallback(mon); + bscallback = create_channelbsc(mon); IMoniker_Release(mon);
channelbsc_set_channel(bscallback, This, listener, context); diff --git a/dlls/mshtml/persist.c b/dlls/mshtml/persist.c index 8c0cb3b..a094dc1 100644 --- a/dlls/mshtml/persist.c +++ b/dlls/mshtml/persist.c @@ -185,7 +185,7 @@ void set_current_mon(HTMLDocument *This, IMoniker *mon)
static HRESULT set_moniker(HTMLDocument *This, IMoniker *mon, IBindCtx *pibc, BOOL *bind_complete) { - BSCallback *bscallback; + nsChannelBSC *bscallback; LPOLESTR url = NULL; task_t *task; HRESULT hres; @@ -271,7 +271,7 @@ static HRESULT set_moniker(HTMLDocument *This, IMoniker *mon, IBindCtx *pibc, BO } }
- bscallback = create_bscallback(mon); + bscallback = create_channelbsc(mon);
if(This->frame) { task = heap_alloc(sizeof(task_t)); @@ -305,7 +305,7 @@ static HRESULT set_moniker(HTMLDocument *This, IMoniker *mon, IBindCtx *pibc, BO if(NS_SUCCEEDED(nsres)) { /* FIXME: don't return here (URL Moniker needs to be good enough) */
- IBindStatusCallback_Release(STATUSCLB(bscallback)); + IUnknown_Release((IUnknown*)bscallback); CoTaskMemFree(url);
if(bind_complete) @@ -317,7 +317,7 @@ static HRESULT set_moniker(HTMLDocument *This, IMoniker *mon, IBindCtx *pibc, BO }
set_document_bscallback(This, bscallback); - IBindStatusCallback_Release(STATUSCLB(bscallback)); + IUnknown_Release((IUnknown*)bscallback); CoTaskMemFree(url);
if(bind_complete) @@ -422,7 +422,7 @@ static HRESULT WINAPI PersistMoniker_Load(IPersistMoniker *iface, BOOL fFullyAva return hres;
if(!bind_complete) - return start_binding(This, This->bscallback, pibc); + return start_binding(This, (BSCallback*)This->bscallback, pibc);
return S_OK; } @@ -687,7 +687,7 @@ static HRESULT WINAPI PersistStreamInit_Load(IPersistStreamInit *iface, LPSTREAM if(FAILED(hres)) return hres;
- return load_stream(This->bscallback, pStm); + return channelbsc_load_stream(This->bscallback, pStm); }
static HRESULT WINAPI PersistStreamInit_Save(IPersistStreamInit *iface, LPSTREAM pStm,