Nikolay Sivov : hlink: Use CRT allocation functions.
Alexandre Julliard
julliard at winehq.org
Mon Apr 11 15:54:59 CDT 2022
Module: wine
Branch: master
Commit: 0dad77afa9b8f6e30946e119cdfbfc1a84f943db
URL: https://source.winehq.org/git/wine.git/?a=commit;h=0dad77afa9b8f6e30946e119cdfbfc1a84f943db
Author: Nikolay Sivov <nsivov at codeweavers.com>
Date: Mon Apr 11 11:40:29 2022 +0300
hlink: Use CRT allocation functions.
Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/hlink/browse_ctx.c | 15 +++++++--------
dlls/hlink/extserv.c | 29 +++++++++++++----------------
dlls/hlink/hlink_main.c | 6 +++---
dlls/hlink/hlink_private.h | 17 -----------------
dlls/hlink/link.c | 33 ++++++++++++++++-----------------
5 files changed, 39 insertions(+), 61 deletions(-)
diff --git a/dlls/hlink/browse_ctx.c b/dlls/hlink/browse_ctx.c
index 58a43b180fc..44db1a1fc0c 100644
--- a/dlls/hlink/browse_ctx.c
+++ b/dlls/hlink/browse_ctx.c
@@ -88,11 +88,11 @@ static ULONG WINAPI IHlinkBC_fnRelease (IHlinkBrowseContext* iface)
{
list_remove(&link->entry);
IHlink_Release(link->link);
- heap_free(link);
+ free(link);
}
- heap_free(This->BrowseWindowInfo);
- heap_free(This);
+ free(This->BrowseWindowInfo);
+ free(This);
}
return ref;
@@ -174,8 +174,8 @@ static HRESULT WINAPI IHlinkBC_SetBrowseWindowInfo(IHlinkBrowseContext* iface,
if(!phlbwi)
return E_INVALIDARG;
- heap_free(This->BrowseWindowInfo);
- This->BrowseWindowInfo = heap_alloc(phlbwi->cbSize);
+ free(This->BrowseWindowInfo);
+ This->BrowseWindowInfo = malloc(phlbwi->cbSize);
memcpy(This->BrowseWindowInfo, phlbwi, phlbwi->cbSize);
return S_OK;
@@ -209,7 +209,7 @@ static HRESULT WINAPI IHlinkBC_SetInitialHlink(IHlinkBrowseContext* iface,
if (!list_empty(&This->links))
return CO_E_ALREADYINITIALIZED;
- link = heap_alloc(sizeof(struct link_entry));
+ link = malloc(sizeof(struct link_entry));
if (!link) return E_OUTOFMEMORY;
HlinkCreateFromMoniker(pimkTarget, pwzLocation, pwzFriendlyName, NULL,
@@ -375,14 +375,13 @@ HRESULT HLinkBrowseContext_Constructor(IUnknown *pUnkOuter, REFIID riid, void **
if (pUnkOuter)
return CLASS_E_NOAGGREGATION;
- hl = heap_alloc_zero(sizeof(HlinkBCImpl));
+ hl = calloc(1, sizeof(*hl));
if (!hl)
return E_OUTOFMEMORY;
hl->ref = 1;
hl->IHlinkBrowseContext_iface.lpVtbl = &hlvt;
list_init(&hl->links);
- hl->current = NULL;
*ppv = hl;
return S_OK;
diff --git a/dlls/hlink/extserv.c b/dlls/hlink/extserv.c
index 7a5f62246f4..d6587ce9e79 100644
--- a/dlls/hlink/extserv.c
+++ b/dlls/hlink/extserv.c
@@ -89,10 +89,10 @@ static ULONG WINAPI ExtServUnk_Release(IUnknown *iface)
TRACE("(%p) ref=%ld\n", This, ref);
if(!ref) {
- heap_free(This->username);
- heap_free(This->password);
- heap_free(This->headers);
- heap_free(This);
+ free(This->username);
+ free(This->password);
+ free(This->headers);
+ free(This);
}
return ref;
@@ -236,7 +236,7 @@ static HRESULT ExtServ_ImplSetAdditionalHeaders(ExtensionService* This, LPCWSTR
{
int len;
- heap_free(This->headers);
+ free(This->headers);
This->headers = NULL;
if (!pwzAdditionalHeaders)
@@ -245,11 +245,11 @@ static HRESULT ExtServ_ImplSetAdditionalHeaders(ExtensionService* This, LPCWSTR
len = lstrlenW(pwzAdditionalHeaders);
if(len && pwzAdditionalHeaders[len-1] != '\n' && pwzAdditionalHeaders[len-1] != '\r') {
- This->headers = heap_alloc(len*sizeof(WCHAR) + sizeof(L"\r\n"));
+ This->headers = malloc(len*sizeof(WCHAR) + sizeof(L"\r\n"));
memcpy(This->headers, pwzAdditionalHeaders, len*sizeof(WCHAR));
memcpy(This->headers+len, L"\r\n", sizeof(L"\r\n"));
}else {
- This->headers = hlink_strdupW(pwzAdditionalHeaders);
+ This->headers = wcsdup(pwzAdditionalHeaders);
}
return S_OK;
@@ -266,12 +266,12 @@ static HRESULT WINAPI ExtServ_SetAdditionalHeaders(IExtensionServices* iface, LP
static HRESULT ExtServ_ImplSetAuthenticateData(ExtensionService* This, HWND phwnd, LPCWSTR pwzUsername, LPCWSTR pwzPassword)
{
- heap_free(This->username);
- heap_free(This->password);
+ free(This->username);
+ free(This->password);
This->hwnd = phwnd;
- This->username = hlink_strdupW(pwzUsername);
- This->password = hlink_strdupW(pwzPassword);
+ This->username = wcsdup(pwzUsername);
+ This->password = wcsdup(pwzPassword);
return S_OK;
}
@@ -307,17 +307,14 @@ HRESULT WINAPI HlinkCreateExtensionServices(LPCWSTR pwzAdditionalHeaders,
phwnd, debugstr_w(pszUsername), debugstr_w(pszPassword),
punkOuter, debugstr_guid(riid), ppv);
- ret = heap_alloc(sizeof(*ret));
+ if (!(ret = calloc(1, sizeof(*ret))))
+ return E_OUTOFMEMORY;
ret->IUnknown_inner.lpVtbl = &ExtServUnkVtbl;
ret->IAuthenticate_iface.lpVtbl = &AuthenticateVtbl;
ret->IHttpNegotiate_iface.lpVtbl = &HttpNegotiateVtbl;
ret->IExtensionServices_iface.lpVtbl = &ExtServVtbl;
ret->ref = 1;
- ret->headers = NULL;
- ret->hwnd = NULL;
- ret->username = NULL;
- ret->password = NULL;
ExtServ_ImplSetAuthenticateData(ret, phwnd, pszUsername, pszPassword);
ExtServ_ImplSetAdditionalHeaders(ret, pwzAdditionalHeaders);
diff --git a/dlls/hlink/hlink_main.c b/dlls/hlink/hlink_main.c
index 46a401824ae..e70a066bb05 100644
--- a/dlls/hlink/hlink_main.c
+++ b/dlls/hlink/hlink_main.c
@@ -103,7 +103,7 @@ HRESULT WINAPI HlinkCreateFromString( LPCWSTR pwzTarget, LPCWSTR pwzLocation,
else
{
int tgt_len = hash - pwzTarget;
- tgt = heap_alloc((tgt_len + 1) * sizeof(WCHAR));
+ tgt = malloc((tgt_len + 1) * sizeof(WCHAR));
if (!tgt)
return E_OUTOFMEMORY;
memcpy(tgt, pwzTarget, tgt_len * sizeof(WCHAR));
@@ -116,7 +116,7 @@ HRESULT WINAPI HlinkCreateFromString( LPCWSTR pwzTarget, LPCWSTR pwzLocation,
}
else
{
- tgt = hlink_strdupW(pwzTarget);
+ tgt = wcsdup(pwzTarget);
if (!tgt)
return E_OUTOFMEMORY;
loc = pwzLocation;
@@ -130,7 +130,7 @@ HRESULT WINAPI HlinkCreateFromString( LPCWSTR pwzTarget, LPCWSTR pwzLocation,
IHlink_SetStringReference(hl, HLINKSETF_TARGET | HLINKSETF_LOCATION, tgt, loc);
- heap_free(tgt);
+ free(tgt);
if (pwzFriendlyName)
IHlink_SetFriendlyName(hl, pwzFriendlyName);
diff --git a/dlls/hlink/hlink_private.h b/dlls/hlink/hlink_private.h
index 565c264fee9..cf1befdb78f 100644
--- a/dlls/hlink/hlink_private.h
+++ b/dlls/hlink/hlink_private.h
@@ -27,26 +27,9 @@
#include "ole2.h"
#include "hlink.h"
-#include "wine/heap.h"
-
extern HRESULT HLink_Constructor(IUnknown*,REFIID,void**) DECLSPEC_HIDDEN;
extern HRESULT HLinkBrowseContext_Constructor(IUnknown*,REFIID,void**) DECLSPEC_HIDDEN;
-static inline LPWSTR hlink_strdupW(LPCWSTR str)
-{
- LPWSTR ret = NULL;
-
- if(str) {
- DWORD size;
-
- size = (lstrlenW(str)+1)*sizeof(WCHAR);
- ret = heap_alloc(size);
- memcpy(ret, str, size);
- }
-
- return ret;
-}
-
static inline LPWSTR hlink_co_strdupW(LPCWSTR str)
{
LPWSTR ret = NULL;
diff --git a/dlls/hlink/link.c b/dlls/hlink/link.c
index 46597488ab1..305f7136a44 100644
--- a/dlls/hlink/link.c
+++ b/dlls/hlink/link.c
@@ -169,14 +169,14 @@ static ULONG WINAPI IHlink_fnRelease (IHlink* iface)
return refCount;
TRACE("-- destroying IHlink (%p)\n", This);
- heap_free(This->FriendlyName);
- heap_free(This->TargetFrameName);
- heap_free(This->Location);
+ free(This->FriendlyName);
+ free(This->TargetFrameName);
+ free(This->Location);
if (This->Moniker)
IMoniker_Release(This->Moniker);
if (This->Site)
IHlinkSite_Release(This->Site);
- heap_free(This);
+ free(This);
return 0;
}
@@ -248,8 +248,8 @@ static HRESULT WINAPI IHlink_fnSetMonikerReference( IHlink* iface,
}
if(rfHLSETF & HLINKSETF_LOCATION){
- heap_free(This->Location);
- This->Location = hlink_strdupW( pwzLocation );
+ free(This->Location);
+ This->Location = wcsdup( pwzLocation );
}
return S_OK;
@@ -310,10 +310,10 @@ static HRESULT WINAPI IHlink_fnSetStringReference(IHlink* iface,
if (grfHLSETF & HLINKSETF_LOCATION)
{
- heap_free(This->Location);
+ free(This->Location);
This->Location = NULL;
if (pwzLocation && *pwzLocation)
- This->Location = hlink_strdupW( pwzLocation );
+ This->Location = wcsdup( pwzLocation );
}
return S_OK;
@@ -399,8 +399,8 @@ static HRESULT WINAPI IHlink_fnSetFriendlyName (IHlink *iface,
TRACE("(%p) -> (%s)\n", This, debugstr_w(pwzFriendlyName));
- heap_free(This->FriendlyName);
- This->FriendlyName = hlink_strdupW( pwzFriendlyName );
+ free(This->FriendlyName);
+ This->FriendlyName = wcsdup( pwzFriendlyName );
return S_OK;
}
@@ -447,8 +447,8 @@ static HRESULT WINAPI IHlink_fnSetTargetFrameName(IHlink* iface,
HlinkImpl *This = impl_from_IHlink(iface);
TRACE("(%p)->(%s)\n", This, debugstr_w(pwzTargetFramename));
- heap_free(This->TargetFrameName);
- This->TargetFrameName = hlink_strdupW( pwzTargetFramename );
+ free(This->TargetFrameName);
+ This->TargetFrameName = wcsdup( pwzTargetFramename );
return S_OK;
}
@@ -767,18 +767,18 @@ static HRESULT read_hlink_string(IStream *pStm, LPWSTR *out_str)
TRACE("read len %ld\n", len);
- str = heap_alloc(len * sizeof(WCHAR));
+ str = malloc(len * sizeof(WCHAR));
if (!str) return E_OUTOFMEMORY;
hr = IStream_Read(pStm, str, len * sizeof(WCHAR), &read);
if (FAILED(hr))
{
- heap_free(str);
+ free(str);
return hr;
}
if (read != len * sizeof(WCHAR))
{
- heap_free(str);
+ free(str);
return STG_E_READFAULT;
}
TRACE("read string %s\n", debugstr_w(str));
@@ -1137,8 +1137,7 @@ HRESULT HLink_Constructor(IUnknown *pUnkOuter, REFIID riid, void **ppv)
if (pUnkOuter)
return CLASS_E_NOAGGREGATION;
- hl = heap_alloc_zero(sizeof(HlinkImpl));
- if (!hl)
+ if (!(hl = calloc(1, sizeof(*hl))))
return E_OUTOFMEMORY;
hl->ref = 1;
More information about the wine-cvs
mailing list