Browse Source

Messaging fixes

Checking the message name (and connectorId) is mandatory for Safari,
because when the background page sends a response back to a document,
then all the frames in its owner tab will receive the exact same
message, which could confuse the script in some cases.
pull/2/head
Deathamns 10 years ago
committed by gorhill
parent
commit
3d535c6c69
  1. 10
      src/js/vapi-background.js

10
src/js/vapi-background.js

@ -177,8 +177,8 @@ if (self.chrome) {
vAPI.messaging = { vAPI.messaging = {
ports: {}, ports: {},
listeners: {}, listeners: {},
listen: function(name, callback) {
this.listeners[name] = callback;
listen: function(listenerName, callback) {
this.listeners[listenerName] = callback;
}, },
setup: function(connector) { setup: function(connector) {
if (this.connector) { if (this.connector) {
@ -654,8 +654,8 @@ if (self.chrome) {
vAPI.messaging = { vAPI.messaging = {
listeners: {}, listeners: {},
listen: function(name, callback) {
this.listeners[name] = callback;
listen: function(listenerName, callback) {
this.listeners[listenerName] = callback;
}, },
setup: function(connector) { setup: function(connector) {
if (this.connector) { if (this.connector) {
@ -666,7 +666,7 @@ if (self.chrome) {
var callback = function(response) { var callback = function(response) {
if (request.message.requestId && response !== undefined) { if (request.message.requestId && response !== undefined) {
request.target.page.dispatchMessage( request.target.page.dispatchMessage(
'message',
request.name,
{ {
requestId: request.message.requestId, requestId: request.message.requestId,
portName: request.message.portName, portName: request.message.portName,

Loading…
Cancel
Save