Remove unnecessary resources 92/232092/1
authorJusung Son <jusung07.son@samsung.com>
Tue, 28 Apr 2020 07:10:20 +0000 (16:10 +0900)
committerJusung Son <jusung07.son@samsung.com>
Tue, 28 Apr 2020 07:10:20 +0000 (16:10 +0900)
Change-Id: I207bfe987cd035ec954e4e4ec74d72c85d133e29
Signed-off-by: Jusung Son <jusung07.son@samsung.com>
src/proxy-internal.cc

index 4ba8b29..746b7e6 100644 (file)
@@ -57,9 +57,16 @@ gboolean Proxy::OnSocketDisconnected(GIOChannel *gio, GIOCondition cond,
   if (proxy->main_port_.get()->GetFd() == fd) {
     proxy->listener_ = nullptr;
     proxy->main_port_.get()->SetDisconnectedSource(0);
-    listener->OnDisconnected(proxy->target_appid_);
+    if (listener)
+      listener->OnDisconnected(proxy->target_appid_);
+
+    proxy->main_port_.reset();
+    proxy->delegate_port_.reset();
   } else if (proxy->delegate_port_.get()->GetFd() == fd) {
     proxy->delegate_port_.get()->SetDisconnectedSource(0);
+
+    proxy->main_port_.reset();
+    proxy->delegate_port_.reset();
   }
 
   return FALSE;
@@ -79,6 +86,9 @@ gboolean Proxy::OnDataReceived(GIOChannel *gio, GIOCondition cond,
       proxy->delegate_port_.get()->SetSource(0);
       if (listener)
         listener->OnDisconnected(proxy->target_appid_);
+
+      proxy->main_port_.reset();
+      proxy->delegate_port_.reset();
       return FALSE;
     }