homescreen/hs-proxy: Guard against empty appids
[apps/agl-service-homescreen.git] / src / homescreen.cpp
index 8470635..49850be 100644 (file)
@@ -162,9 +162,13 @@ static void tap_shortcut (afb_req_t request)
         ret = g_hs_instance->client_manager->handleRequest(request, __FUNCTION__, value);
         if(ret == AFB_REQ_NOT_STARTED_APPLICATION) {
             std::string id = g_hs_instance->app_info->getAppProperty(value, _keyId);
-            HS_AfmMainProxy afm_proxy;
-            afm_proxy.start(g_hs_instance, request, id);
-            ret = 0;
+           if (!id.empty()) {
+                   HS_AfmMainProxy afm_proxy;
+                   afm_proxy.start(g_hs_instance, request, id);
+                   ret = 0;
+           } else {
+                   ret = AFB_EVENT_BAD_REQUEST;
+           }
         }
     }
     else {
@@ -314,9 +318,13 @@ static void showWindow(afb_req_t request)
         ret = g_hs_instance->client_manager->handleRequest(request, __FUNCTION__, value);
         if(ret == AFB_REQ_NOT_STARTED_APPLICATION) {
             std::string id = g_hs_instance->app_info->getAppProperty(value, _keyId);
-            HS_AfmMainProxy afm_proxy;
-            afm_proxy.start(g_hs_instance, request, id);
-            ret = 0;
+           if (!id.empty()) {
+                   HS_AfmMainProxy afm_proxy;
+                   afm_proxy.start(g_hs_instance, request, id);
+                   ret = 0;
+           } else {
+                   ret = AFB_EVENT_BAD_REQUEST;
+           }
         }
     }
     else {