diff options
author | Pawan Wagh <waghpawan@google.com> | 2023-04-19 02:31:15 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2023-04-19 02:31:15 +0000 |
commit | 70ea4b840ac8f21b4084aae439250c9595a706fa (patch) | |
tree | 7cd154a6d51ee0443d6a88f470bb0c074a8b8cab | |
parent | 781461c79a6f94c01dcddfb3ed3ab44756ac9dff (diff) | |
parent | fef7c1a1ef6a5d670a5701d27fa97d0e7e8deca2 (diff) | |
download | DnsResolver-70ea4b840ac8f21b4084aae439250c9595a706fa.tar.gz |
Merge "Delete command objects in DnsProxyListener destructor" am: fef7c1a1ef
Original change: https://android-review.googlesource.com/c/platform/packages/modules/DnsResolver/+/2542070
Change-Id: Ia4ecdf469cc8d3c8b2cbdda7e17709322aa4a0fd
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r-- | DnsProxyListener.cpp | 19 | ||||
-rw-r--r-- | DnsProxyListener.h | 6 |
2 files changed, 20 insertions, 5 deletions
diff --git a/DnsProxyListener.cpp b/DnsProxyListener.cpp index 55210842..16a8477c 100644 --- a/DnsProxyListener.cpp +++ b/DnsProxyListener.cpp @@ -659,11 +659,20 @@ std::string makeThreadName(unsigned netId, uint32_t uid) { } // namespace DnsProxyListener::DnsProxyListener() : FrameworkListener(SOCKET_NAME) { - registerCmd(new GetAddrInfoCmd()); - registerCmd(new GetHostByAddrCmd()); - registerCmd(new GetHostByNameCmd()); - registerCmd(new ResNSendCommand()); - registerCmd(new GetDnsNetIdCommand()); + mGetAddrInfoCmd = std::make_unique<GetAddrInfoCmd>(); + registerCmd(mGetAddrInfoCmd.get()); + + mGetHostByAddrCmd = std::make_unique<GetHostByAddrCmd>(); + registerCmd(mGetHostByAddrCmd.get()); + + mGetHostByNameCmd = std::make_unique<GetHostByNameCmd>(); + registerCmd(mGetHostByNameCmd.get()); + + mResNSendCommand = std::make_unique<ResNSendCommand>(); + registerCmd(mResNSendCommand.get()); + + mGetDnsNetIdCommand = std::make_unique<GetDnsNetIdCommand>(); + registerCmd(mGetDnsNetIdCommand.get()); } void DnsProxyListener::Handler::spawn() { diff --git a/DnsProxyListener.h b/DnsProxyListener.h index 87f58c8b..921e761e 100644 --- a/DnsProxyListener.h +++ b/DnsProxyListener.h @@ -164,6 +164,12 @@ class DnsProxyListener : public FrameworkListener { virtual ~GetDnsNetIdCommand() {} int runCommand(SocketClient* c, int argc, char** argv) override; }; + + std::unique_ptr<GetAddrInfoCmd> mGetAddrInfoCmd; + std::unique_ptr<GetHostByAddrCmd> mGetHostByAddrCmd; + std::unique_ptr<GetHostByNameCmd> mGetHostByNameCmd; + std::unique_ptr<ResNSendCommand> mResNSendCommand; + std::unique_ptr<GetDnsNetIdCommand> mGetDnsNetIdCommand; }; } // namespace net |