From 9c5673968c8067254d5dad72def5a8ddcd1b3fa0 Mon Sep 17 00:00:00 2001 From: John Berlin Date: Mon, 8 Jan 2018 19:08:21 -0500 Subject: [PATCH] wombat: improved the fetch override to ensure that a live leak does not occur when input is an instance of WombatLocation or URL, will also handle any object that has href (#276) --- pywb/static/wombat.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/pywb/static/wombat.js b/pywb/static/wombat.js index 9d7a14f6..9f7227f8 100644 --- a/pywb/static/wombat.js +++ b/pywb/static/wombat.js @@ -907,13 +907,17 @@ var _WBWombat = function($wbwindow, wbinfo) { var orig_fetch = $wbwindow.fetch; $wbwindow.fetch = function(input, init_opts) { - if (typeof(input) === "string") { + var inputType = typeof(input); + if (inputType === "string") { input = rewrite_url(input); - } else if (typeof(input) === "object" && input.url) { + } else if (inputType === "object" && input.url) { var new_url = rewrite_url(input.url); if (new_url != input.url) { input = new Request(new_url, input); } + } else if (inputType === "object" && input.href) { + // it is likely that input is either window.location or window.URL + input = rewrite_url(input.href); } init_opts = init_opts || {};