[Addon] Fix argument passing to EventEmitter 55/240855/1
authorws29.jung <ws29.jung@samsung.com>
Wed, 12 Aug 2020 06:14:55 +0000 (15:14 +0900)
committerws29.jung <ws29.jung@samsung.com>
Wed, 12 Aug 2020 06:14:55 +0000 (15:14 +0900)
When function argument list '...args' is handled as 'args,
it is no longer can be used as multiple argument list
but a single object.
To keep and pass same argument list through Emitter functions,
inappropariate use of 'args' is now changed to '...args'.

Change-Id: Ia978fbfd9aa337d027442813c04808e903b5bd12
Signed-off-by: ws29.jung <ws29.jung@samsung.com>
wrt_app/src/addon_manager.ts

index c4f1b66..de7a845 100644 (file)
@@ -65,7 +65,7 @@ class AddonEventManager {
   private listeners = new Map();
   private bindListener = (listener: (...args: any[]) => void, addon: AddonInfo): (...args: any[]) => void => {
     return (...args) => {
-      listener.call(addon.module, args);
+      listener.call(addon.module, ...args);
     }
   }
   on = (eventName: string, listener: (...args: any[]) => void, addon: AddonInfo): void => {
@@ -115,7 +115,7 @@ class AddonEventManager {
     }
   }
   emit = (eventName: string, ...args: any[]): void => {
-    this.emitter.emit(eventName, args);
+    this.emitter.emit(eventName, ...args);
   }
 }
 
@@ -240,7 +240,7 @@ class AddonManager {
   }
 
   emit(eventName: string, ...args: any[]) {
-    this.eventManager.emit(eventName, args);
+    this.eventManager.emit(eventName, ...args);
   }
 
   checkAddon(appPath: string) {