Bug 1299411 - s/on/once/ in NativeApp's sendMessage draft
authorRob Wu <rob@robwu.nl>
Sat, 24 Sep 2016 13:22:31 +0200
changeset 430574 b23f234bc5b04c82cc6946bdfa13791a59262701
parent 430573 7f42500ed69866d6514b12e4a5687828c027bf71
child 430575 6d321ed855dda97b4ebfff9c558145cbb1419b9b
child 430579 850bd07df0b6d5192d67071137288e277dd37665
push id33850
push userbmo:rob@robwu.nl
push dateThu, 27 Oct 2016 23:41:10 +0000
bugs1299411
milestone52.0a1
Bug 1299411 - s/on/once/ in NativeApp's sendMessage This communicates more clearly that we expect only one message/event. MozReview-Commit-ID: 8jDYBVwqQtz
toolkit/components/extensions/NativeMessaging.jsm
--- a/toolkit/components/extensions/NativeMessaging.jsm
+++ b/toolkit/components/extensions/NativeMessaging.jsm
@@ -425,18 +425,18 @@ this.NativeApp = class extends EventEmit
 
     port = Cu.cloneInto(port, this.context.cloneScope, {cloneFunctions: true});
 
     return port;
   }
 
   sendMessage(msg) {
     let responsePromise = new Promise((resolve, reject) => {
-      this.on("message", (what, msg) => { resolve(msg); });
-      this.on("disconnect", (what, err) => { reject(err); });
+      this.once("message", (what, msg) => { resolve(msg); });
+      this.once("disconnect", (what, err) => { reject(err); });
     });
 
     let result = this.startupPromise.then(() => {
       this.send(msg);
       return responsePromise;
     });
 
     result.then(() => {