From c5e688f26c825f1ff15d2f4bb154c0f457d54ff9 Mon Sep 17 00:00:00 2001 From: Jay Kamat Date: Wed, 17 Jan 2018 13:08:04 -0500 Subject: [PATCH] Stop iterating over every frame to check if element is frame --- qutebrowser/javascript/webelem.js | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/qutebrowser/javascript/webelem.js b/qutebrowser/javascript/webelem.js index c236a5b0a..72083a121 100644 --- a/qutebrowser/javascript/webelem.js +++ b/qutebrowser/javascript/webelem.js @@ -264,13 +264,10 @@ window._qutebrowser.webelem = (function() { // Check if elem is an iframe, and if so, return the result of func on it. // If no iframes match, return null function call_if_frame(elem, func) { - for (let i = 0; i < window.frames.length; ++i) { - const frame = window.frames[i]; - if (iframe_same_domain(frame)) { - if (frame.frameElement === elem) { - return func(frame); - } - } + const frame = elem.contentWindow; + // Check if elem is a frame, and if so, call func on the window + if (frame && iframe_same_domain(frame) && frame.frameElement) { + return func(frame); } return null; }