[Mediacontroller] Check if watch id exists before removing.
authorTomasz Marciniak <t.marciniak@samsung.com>
Fri, 19 Jun 2015 08:05:25 +0000 (10:05 +0200)
committerTomasz Marciniak <t.marciniak@samsung.com>
Fri, 19 Jun 2015 08:05:25 +0000 (10:05 +0200)
[Verification] Code compiles without errors.
Below tests pass:
MediaControllerServerInfo_removeServerStatusChangeListener_watchId_invalid
:MediaControllerServerInfo_removePlaybackInfoChangeListener_watchId_invalid

Change-Id: I74646150669cc5d8e95893e7bd605ca885cd5568
Signed-off-by: Tomasz Marciniak <t.marciniak@samsung.com>
src/mediacontroller/mediacontroller_api.js

index a018b07c4af069ceea2613b5a69e8e0649e0972d..309ca9cd55492b601fa41bbfb1fb933ca4bbd1e9 100755 (executable)
@@ -62,6 +62,10 @@ ListenerManager.prototype.addListener = function(callback) {
 };
 
 ListenerManager.prototype.removeListener = function(watchId) {
+  if (this.listeners[watchId] === null || this.listeners[watchId] === undefined) {
+    throw new WebAPIException(0, 'Watch id not found.', 'InvalidValuesError');
+  }
+
   if (this.listeners.hasOwnProperty(watchId)) {
     delete this.listeners[watchId];
   }