aboutsummaryrefslogtreecommitdiffstats
path: root/src/hs-apprecover.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/hs-apprecover.cpp')
-rw-r--r--src/hs-apprecover.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/hs-apprecover.cpp b/src/hs-apprecover.cpp
index adc8a3a..e3a84c6 100644
--- a/src/hs-apprecover.cpp
+++ b/src/hs-apprecover.cpp
@@ -90,7 +90,6 @@ int HS_AppRecover::init(afb_api_t api)
*/
void HS_AppRecover::startRecovery(afb_api_t api)
{
- this->addListenAppId(_listen_all);
HS_ClientManager::instance()->addListener(this);
for(auto &key : HS_Config::keys_recover_type) {
@@ -142,6 +141,7 @@ void HS_AppRecover::notify(afb_api_t api, std::string appid)
AFB_INFO("recover appid=[%s].", appid.c_str());
auto it = m_recovering_set.find(appid);
if(it != m_recovering_set.end()) {
+ this->removeListenAppId(appid);
m_recovering_set.erase(appid);
auto ip = m_recover_apps_list.find(appid);
if(ip != m_recover_apps_list.end()
@@ -216,6 +216,7 @@ void HS_AppRecover::screenUpdated(struct json_object *obj)
*/
void HS_AppRecover::startApplication(afb_api_t api, const std::string &appid)
{
+ this->addListenAppId(appid);
HS_AfmMainProxy afm_proxy;
afm_proxy.start(api, HS_AppInfo::instance()->getAppProperty(appid, _keyId));
}