From 0b265b6376c36188baec8c75f5b3f733badee046 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Oskar=20=C5=9Awitalski?= Date: Wed, 29 Jun 2016 07:35:35 +0200 Subject: [PATCH] Fix memory leaks MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Change-Id: I28a3c6b005996e972f2a1cfeb42f14ee82833777 Signed-off-by: Oskar Świtalski --- src/agent/notification-daemon/AskUserTalker.cpp | 8 +++----- src/agent/notification-daemon/GuiRunner.cpp | 4 ++-- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/src/agent/notification-daemon/AskUserTalker.cpp b/src/agent/notification-daemon/AskUserTalker.cpp index 45d16ab..e197f7a 100644 --- a/src/agent/notification-daemon/AskUserTalker.cpp +++ b/src/agent/notification-daemon/AskUserTalker.cpp @@ -157,7 +157,6 @@ void AskUserTalker::run() while (!stopFlag) { size_t size; - char *buf; NotificationResponse response; ALOGD("Waiting for request..."); @@ -169,15 +168,14 @@ void AskUserTalker::run() Limits::checkSizeLimit(size); - buf = new char[size]; + std::unique_ptr buf(new char[size]); - if (!Socket::recv(sockfd, buf, size)) { + if (!Socket::recv(sockfd, buf.get(), size)) { ALOGI("Askuserd closed connection, closing..."); break; } - NotificationRequest request = Translator::Gui::dataToNotificationRequest(buf); - delete[] buf; + NotificationRequest request = Translator::Gui::dataToNotificationRequest(buf.get()); ALOGD("Recieved data " << request.data.client << " " << request.data.privilege); response.response = m_gui->popupRun(request.data.client, request.data.privilege); diff --git a/src/agent/notification-daemon/GuiRunner.cpp b/src/agent/notification-daemon/GuiRunner.cpp index f8b9cee..42dc860 100644 --- a/src/agent/notification-daemon/GuiRunner.cpp +++ b/src/agent/notification-daemon/GuiRunner.cpp @@ -188,8 +188,8 @@ NResponseType GuiRunner::popupRun(const std::string &app, const std::string &per initialize(); m_running = true; - drop *Drop = new drop({m_dropHandler, m_popupData}); - m_timer = ecore_timer_add(0.1, timeout_answer, Drop); + std::unique_ptr Drop(new drop({m_dropHandler, m_popupData})); + m_timer = ecore_timer_add(0.1, timeout_answer, Drop.get()); // create message char *messageFormat = dgettext(PROJECT_NAME, "SID_PRIVILEGE_REQUEST_DIALOG_MESSAGE"); -- 2.7.4