Jacek Caban : shdocvw: Store headers as BSTR.
Module: wine Branch: master Commit: 13a785cc11d4465632fa9f5273fbde3a678cc2b4 URL: http://source.winehq.org/git/wine.git/?a=commit;h=13a785cc11d4465632fa9f5273... Author: Jacek Caban <jacek(a)codeweavers.com> Date: Fri Jan 18 21:54:30 2008 +0100 shdocvw: Store headers as BSTR. --- dlls/shdocvw/navigate.c | 13 ++++--------- 1 files changed, 4 insertions(+), 9 deletions(-) diff --git a/dlls/shdocvw/navigate.c b/dlls/shdocvw/navigate.c index 4439922..2d46abe 100644 --- a/dlls/shdocvw/navigate.c +++ b/dlls/shdocvw/navigate.c @@ -41,7 +41,7 @@ typedef struct { LPWSTR url; HGLOBAL post_data; - LPWSTR headers; + BSTR headers; ULONG post_data_len; } BindStatusCallback; @@ -160,8 +160,9 @@ static ULONG WINAPI BindStatusCallback_Release(IBindStatusCallback *iface) IOleClientSite_Release(CLIENTSITE(This->doc_host)); if(This->post_data) GlobalFree(This->post_data); + if(This->headers) + SysFreeString(This->headers); heap_free(This->url); - heap_free(This->headers); heap_free(This); } @@ -399,7 +400,7 @@ static BindStatusCallback *create_callback(DocHost *doc_host, LPCWSTR url, PBYTE ret->url = heap_strdupW(url); ret->post_data = NULL; ret->post_data_len = post_data_len; - ret->headers = NULL; + ret->headers = headers ? SysAllocString(headers) : NULL; ret->doc_host = doc_host; IOleClientSite_AddRef(CLIENTSITE(doc_host)); @@ -409,12 +410,6 @@ static BindStatusCallback *create_callback(DocHost *doc_host, LPCWSTR url, PBYTE memcpy(ret->post_data, post_data, post_data_len); } - if(headers) { - int size = (strlenW(headers)+1)*sizeof(WCHAR); - ret->headers = heap_alloc(size); - memcpy(ret->headers, headers, size); - } - return ret; }
participants (1)
-
Alexandre Julliard