diff options
author | Maurice Kalinowski <maurice.kalinowski@digia.com> | 2014-05-23 17:16:54 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-06-03 09:55:30 +0200 |
commit | 6b9a9a01e289381ea915ac43595c6c5da0db73b4 (patch) | |
tree | 68f460051ea2e42af8b5d6c7331ad5218cc1e68c /src/network/kernel/qhostinfo_winrt.cpp | |
parent | 69e2d3b3e96bb1fa553acb5cd867267d1596c314 (diff) |
remove HSTRING instances
HSTRING needs to be released or handles will be leaked.
Instead use HString which takes care of resource management
on its own.
Task-Number: QTBUG-38115
Change-Id: I2c767776c1f22f45acd8dd77b693f30d63d894b9
Reviewed-by: Andrew Knight <andrew.knight@digia.com>
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Diffstat (limited to 'src/network/kernel/qhostinfo_winrt.cpp')
-rw-r--r-- | src/network/kernel/qhostinfo_winrt.cpp | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/src/network/kernel/qhostinfo_winrt.cpp b/src/network/kernel/qhostinfo_winrt.cpp index 92897f563d..e02cd98e08 100644 --- a/src/network/kernel/qhostinfo_winrt.cpp +++ b/src/network/kernel/qhostinfo_winrt.cpp @@ -95,9 +95,9 @@ QHostInfo QHostInfoAgent::fromName(const QString &hostName) GetActivationFactory(HString::MakeReference(RuntimeClass_Windows_Networking_Sockets_DatagramSocket).Get(), &datagramSocketStatics); IAsyncOperation<IVectorView<EndpointPair*> *> *op; - HSTRING proto; - WindowsCreateString(L"0", 1, &proto); - datagramSocketStatics->GetEndpointPairsAsync(host, proto, &op); + datagramSocketStatics->GetEndpointPairsAsync(host, + HString::MakeReference(L"0").Get(), + &op); datagramSocketStatics->Release(); host->Release(); @@ -131,11 +131,11 @@ QHostInfo QHostInfoAgent::fromName(const QString &hostName) if (type == HostNameType_DomainName) continue; - HSTRING name; - remoteHost->get_CanonicalName(&name); + HString name; + remoteHost->get_CanonicalName(name.GetAddressOf()); remoteHost->Release(); UINT32 length; - PCWSTR rawString = WindowsGetStringRawBuffer(name, &length); + PCWSTR rawString = name.GetRawBuffer(&length); QHostAddress addr; addr.setAddress(QString::fromWCharArray(rawString, length)); if (!addresses.contains(addr)) @@ -170,22 +170,22 @@ QString QHostInfo::localHostName() if (type != HostNameType_DomainName) continue; - HSTRING name; - hostName->get_CanonicalName(&name); + HString name; + hostName->get_CanonicalName(name.GetAddressOf()); hostName->Release(); UINT32 length; - PCWSTR rawString = WindowsGetStringRawBuffer(name, &length); + PCWSTR rawString = name.GetRawBuffer(&length); return QString::fromWCharArray(rawString, length); } IHostName *firstHost; hostNames->GetAt(0, &firstHost); hostNames->Release(); - HSTRING name; - firstHost->get_CanonicalName(&name); + HString name; + firstHost->get_CanonicalName(name.GetAddressOf()); firstHost->Release(); UINT32 length; - PCWSTR rawString = WindowsGetStringRawBuffer(name, &length); + PCWSTR rawString = name.GetRawBuffer(&length); return QString::fromWCharArray(rawString, length); } |