Store frame to guests in map
authorKevin Sawicki <kevinsawicki@gmail.com>
Tue, 25 Apr 2017 20:53:29 +0000 (13:53 -0700)
committerKevin Sawicki <kevinsawicki@gmail.com>
Wed, 26 Apr 2017 17:14:11 +0000 (10:14 -0700)
lib/browser/guest-window-manager.js

index 8a8e9f4..33ec15a 100644 (file)
@@ -5,7 +5,7 @@ const {isSameOrigin} = process.atomBinding('v8_util')
 const parseFeaturesString = require('../common/parse-features-string')
 
 const hasProp = {}.hasOwnProperty
-const frameToGuest = {}
+const frameToGuest = new Map()
 
 // Copy attribute of |parent| to |child| if it is not defined in |child|.
 const mergeOptions = function (child, parent, visited) {
@@ -92,10 +92,10 @@ const setupGuest = function (embedder, frameName, guest, options) {
     guest.once('closed', closedByUser)
   }
   if (frameName) {
-    frameToGuest[frameName] = guest
+    frameToGuest.set(frameName, guest)
     guest.frameName = frameName
     guest.once('closed', function () {
-      delete frameToGuest[frameName]
+      frameToGuest.delete(frameName)
     })
   }
   return guestId
@@ -103,7 +103,7 @@ const setupGuest = function (embedder, frameName, guest, options) {
 
 // Create a new guest created by |embedder| with |options|.
 const createGuest = function (embedder, url, frameName, options, postData) {
-  let guest = frameToGuest[frameName]
+  let guest = frameToGuest.get(frameName)
   if (frameName && (guest != null)) {
     guest.loadURL(url)
     return guest.webContents.id