DSWaylandTizenAppinfo: call DSTizenAppinfoMgr::releaseInstance only when it gets... 58/242958/1 accepted/tizen/unified/20200902.145526 submit/tizen/20200902.055218
authorSooChan Lim <sc1.lim@samsung.com>
Wed, 2 Sep 2020 01:18:48 +0000 (10:18 +0900)
committerSung-Jin Park <sj76.park@samsung.com>
Wed, 2 Sep 2020 05:24:14 +0000 (14:24 +0900)
Change-Id: Ie3641285c8965d7925f51b7d4bfc3890697cf02f

src/DSWaylandServer/DSWaylandTizenAppinfo.cpp
src/DSWaylandServer/DSWaylandTizenAppinfo.h

index 8f4a684..c78681d 100644 (file)
@@ -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();
 }
index ae3691b..f11b122 100644 (file)
@@ -51,6 +51,7 @@ public:
 private:
        DSWaylandCompositor *__wlCompositor;
        bool __isCreated;
+       bool __isGetDSTizenAppinfoMgr;
        DSTizenAppinfoMgr *__dsAppinfoMgr;
 
 };