Aurum: check package name is empty or not when XMLDocMap is created 31/274331/6
authorHosang Kim <hosang12.kim@samsung.com>
Tue, 26 Apr 2022 07:30:51 +0000 (16:30 +0900)
committerkim hosang <hosang12.kim@samsung.com>
Fri, 13 May 2022 03:24:01 +0000 (03:24 +0000)
Change-Id: I07e71e4324b680169aa57344dec399108e5bfd2a

libaurum/src/Impl/Accessibility/AtspiAccessibleWatcher.cc

index ffc46ed..cab5764 100644 (file)
@@ -194,9 +194,13 @@ void AtspiAccessibleWatcher::appendApp(AtspiAccessibleWatcher *instance, AtspiAc
         LOGI("app(%s) is already in map", pkg);
     }
 
-    if (!instance->mXMLDocMap.count(std::string(pkg))) {
-        instance->mXMLDocMap.insert(std::pair<std::string, std::shared_ptr<AurumXML>>(std::string(pkg),
-                             std::make_shared<AurumXML>(std::make_shared<AtspiAccessibleNode>(app))));
+    std::string package(pkg);
+    if (!package.empty()) {
+        if (instance->mXMLDocMap.count(package)) {
+            instance->mXMLDocMap.erase(package);
+        }
+        instance->mXMLDocMap.insert(std::pair<std::string, std::shared_ptr<AurumXML>>(package,
+                std::make_shared<AurumXML>(std::make_shared<AtspiAccessibleNode>(app))));
     }
 }