[filesystem] Fix getAllStorages 96/216996/2
authorRafal Walczyna <r.walczyna@samsung.com>
Tue, 29 Oct 2019 12:58:14 +0000 (13:58 +0100)
committerPiotr Kosko <p.kosko@samsung.com>
Tue, 5 Nov 2019 09:33:49 +0000 (09:33 +0000)
Fixed bug which causes to show duplicated values of internal
and external storages

[verification] Filesystem and Archive tct - 100% pass.

Change-Id: Ic087583a906eecfa040d97cb903f4c99838c6591
Signed-off-by: Rafal Walczyna <r.walczyna@samsung.com>
src/archive/archive_instance.cc
src/filesystem/filesystem_instance.cc
src/filesystem/filesystem_instance.h
src/filesystem/js/common.js

index e804747..d74dd09 100644 (file)
@@ -58,12 +58,7 @@ ArchiveInstance::ArchiveInstance() {
   using std::placeholders::_1;
   using std::placeholders::_2;
 
-
-
-
-
-#define REGISTER_METHOD(M) \
-    RegisterSyncHandler(#M, std::bind(&ArchiveInstance::M, this, _1, _2))
+#define REGISTER_METHOD(M) RegisterSyncHandler(#M, std::bind(&ArchiveInstance::M, this, _1, _2))
 
   REGISTER_METHOD(ArchiveManagerOpen);
   REGISTER_METHOD(ArchiveManagerAbort);
@@ -79,9 +74,6 @@ ArchiveInstance::ArchiveInstance() {
   REGISTER_METHOD(ArchiveFetchStorages);
 
 #undef REGISTER_METHOD
-
-
-
 }
 
 ArchiveInstance::~ArchiveInstance() {
@@ -458,7 +450,8 @@ void ArchiveInstance::ArchiveFileGetEntries(const picojson::value& args, picojso
   }
 }
 
-void ArchiveInstance::ArchiveFileGetEntryByName(const picojson::value& args, picojson::object& out) {
+void ArchiveInstance::ArchiveFileGetEntryByName(const picojson::value& args,
+                                                picojson::object& out) {
   ScopeLogger("%s", args.serialize().c_str());
 
   CHECK_PRIVILEGE_ACCESS(kPrivilegeFilesystemRead, &out);
index d52caf8..ffea27a 100644 (file)
@@ -103,11 +103,7 @@ FilesystemInstance::FilesystemInstance() {
   using std::placeholders::_1;
   using std::placeholders::_2;
 
-
-
-
-#define REGISTER_METHOD(M) \
-    RegisterSyncHandler(#M, std::bind(&FilesystemInstance::M, this, _1, _2))
+#define REGISTER_METHOD(M) RegisterSyncHandler(#M, std::bind(&FilesystemInstance::M, this, _1, _2))
 
   REGISTER_METHOD(FileStat);
   REGISTER_METHOD(FileStatSync);
@@ -156,7 +152,6 @@ FilesystemInstance::FilesystemInstance() {
 
 #undef REGISTER_METHOD
 
-
   FilesystemManager::GetInstance().AddListener(this);
 }
 
@@ -932,14 +927,16 @@ void FilesystemInstance::FileSystemManagerFetchStorages(const picojson::value& a
 
   FilesystemManager::GetInstance().FetchStorages(onSuccess, onError);
 }
-void FilesystemInstance::FileSystemManagerAddStorageStateChangeListener(const picojson::value& args, picojson::object& out) {
+void FilesystemInstance::FileSystemManagerAddStorageStateChangeListener(const picojson::value& args,
+                                                                        picojson::object& out) {
   ScopeLogger();
   CHECK_PRIVILEGE_ACCESS(kPrivilegeFilesystemWrite, &out);
   FilesystemManager::GetInstance().StartListening();
   ReportSuccess(out);
 }
 
-void FilesystemInstance::FileSystemManagerRemoveStorageStateChangeListener(const picojson::value& args, picojson::object& out) {
+void FilesystemInstance::FileSystemManagerRemoveStorageStateChangeListener(
+    const picojson::value& args, picojson::object& out) {
   ScopeLogger();
   CHECK_PRIVILEGE_ACCESS(kPrivilegeFilesystemWrite, &out);
   FilesystemManager::GetInstance().StopListening();
index 60526f2..30ea02e 100644 (file)
@@ -73,8 +73,10 @@ class FilesystemInstance : public common::ParsedInstance, FilesystemStateChangeL
   void FileReadDir(const picojson::value& args, picojson::object& out);
   void FileUnlinkFile(const picojson::value& args, picojson::object& out);
   void FileRemoveDirectory(const picojson::value& args, picojson::object& out);
-  void FileSystemManagerAddStorageStateChangeListener(const picojson::value& args, picojson::object& out);
-  void FileSystemManagerRemoveStorageStateChangeListener(const picojson::value& args, picojson::object& out);
+  void FileSystemManagerAddStorageStateChangeListener(const picojson::value& args,
+                                                      picojson::object& out);
+  void FileSystemManagerRemoveStorageStateChangeListener(const picojson::value& args,
+                                                         picojson::object& out);
   void FileCopyTo(const picojson::value& args, picojson::object& out);
   void onFilesystemStateChangeErrorCallback();
   void onFilesystemStateChangeSuccessCallback(const common::Storage& storage);
index bf097b1..602abe9 100644 (file)
@@ -446,7 +446,16 @@ var commonFS_ = (function() {
 
         for (var key in cacheVirtualToReal) {
             if (cacheVirtualToReal.hasOwnProperty(key)) {
-                ret.push(cloneStorage(cacheVirtualToReal[key]));
+                var found = false;
+                for (var i = 0; i < cacheStorages.length; ++i) {
+                    if (key === ret[i].label) {
+                        found = true;
+                        break;
+                    }
+                }
+                if (found === false) {
+                    ret.push(cloneStorage(cacheVirtualToReal[key]));
+                }
             }
         }