[mediacontroller][fix] fixed error with subscribe method 04/214504/1
authorDawid Juszczak <d.juszczak@samsung.com>
Mon, 23 Sep 2019 09:58:34 +0000 (11:58 +0200)
committerDawid Juszczak <d.juszczak@samsung.com>
Mon, 23 Sep 2019 09:58:34 +0000 (11:58 +0200)
before that commit, if subscribed method was executed
on already subscribed server then unknown error was thrown
Now it is fixed.

[verification]
tested manually on chrome console

Change-Id: I7d5fe3d0d09eb95d6542ebfb2e163ca32c5d01a0
Signed-off-by: Dawid Juszczak <d.juszczak@samsung.com>
src/mediacontroller/mediacontroller_client.cc

index 9f77350..0fee47b 100644 (file)
@@ -705,6 +705,12 @@ PlatformResult MediaControllerClient::SubscribeServer(const std::string& server_
                           "Unable to subscribe server, AbilityChangeListener is not set");
   }
 
+  auto srv = std::find(subscribed_servers.begin(), subscribed_servers.end(), server_name);
+  if (srv != subscribed_servers.end()) {
+    LoggerD("server %s is already subscribed", server_name.c_str());
+    return PlatformResult(ErrorCode::NO_ERROR);
+  }
+
   SCOPE_EXIT {
     if (to_unsubscribe > 0) {
       for (auto type : types::MediaControllerSubscriptionTypeEnum) {