From a9772b4763520538a6c7a998969cf3faec2f2c1a Mon Sep 17 00:00:00 2001 From: SooChan Lim Date: Wed, 2 Sep 2020 10:18:48 +0900 Subject: [PATCH] DSWaylandTizenAppinfo: call DSTizenAppinfoMgr::releaseInstance only when it gets DSTizenAppinfoManager::getInstance() Change-Id: Ie3641285c8965d7925f51b7d4bfc3890697cf02f --- src/DSWaylandServer/DSWaylandTizenAppinfo.cpp | 8 +++++++- src/DSWaylandServer/DSWaylandTizenAppinfo.h | 1 + 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/DSWaylandServer/DSWaylandTizenAppinfo.cpp b/src/DSWaylandServer/DSWaylandTizenAppinfo.cpp index 8f4a684..c78681d 100644 --- a/src/DSWaylandServer/DSWaylandTizenAppinfo.cpp +++ b/src/DSWaylandServer/DSWaylandTizenAppinfo.cpp @@ -123,16 +123,19 @@ void DSWaylandTizenAppinfoPrivate::tizen_launch_appinfo_ready_metadata(Resource DSWaylandTizenAppinfo::DSWaylandTizenAppinfo(DSWaylandCompositor *wlCompositor) : DS_INIT_PRIVATE_PTR(DSWaylandTizenAppinfo), __wlCompositor(wlCompositor), - __isCreated(false) + __isCreated(false), + __isGetDSTizenAppinfoMgr(false) { this->initialize(__wlCompositor); __dsAppinfoMgr = DSTizenAppinfoMgr::getInstance(); + __isGetDSTizenAppinfoMgr = true; } DSWaylandTizenAppinfo::DSWaylandTizenAppinfo(DSWaylandCompositor *wlCompositor, DSTizenAppinfoMgr *dsAppinfoMgr) : DS_INIT_PRIVATE_PTR(DSWaylandTizenAppinfo), __wlCompositor(wlCompositor), __isCreated(false), + __isGetDSTizenAppinfoMgr(false), __dsAppinfoMgr(dsAppinfoMgr) { this->initialize(__wlCompositor); @@ -140,6 +143,9 @@ DSWaylandTizenAppinfo::DSWaylandTizenAppinfo(DSWaylandCompositor *wlCompositor, DSWaylandTizenAppinfo::~DSWaylandTizenAppinfo() { + if (__isGetDSTizenAppinfoMgr) + DSTizenAppinfoMgr::releaseInstance(); + if (isCreated()) this->finalize(); } diff --git a/src/DSWaylandServer/DSWaylandTizenAppinfo.h b/src/DSWaylandServer/DSWaylandTizenAppinfo.h index ae3691b..f11b122 100644 --- a/src/DSWaylandServer/DSWaylandTizenAppinfo.h +++ b/src/DSWaylandServer/DSWaylandTizenAppinfo.h @@ -51,6 +51,7 @@ public: private: DSWaylandCompositor *__wlCompositor; bool __isCreated; + bool __isGetDSTizenAppinfoMgr; DSTizenAppinfoMgr *__dsAppinfoMgr; }; -- 2.7.4