fix navigation errors being misreported lol professional grade software

This commit is contained in:
2026-07-26 15:12:47 -04:00
parent 3aff7caf2e
commit 7356cd8afd
2 changed files with 44 additions and 4 deletions

View File

@@ -15,7 +15,7 @@ var proxy_map = {};
var web_response_whitelist = ["main_frame", "xmlhttprequest"];
const log_debug = true;
const log_debug = false;
browser.browserAction.setBadgeBackgroundColor({
color: [0, 0, 0, 0]
@@ -638,16 +638,56 @@ browser.tabs.onUpdated.addListener(function(tabid, event, tab){
}
});
browser.webRequest.onHeadersReceived.addListener(function(page){
if(page.type != "main_frame"){
return
};
// send error on 4xx code
if(page.statusCode >= 400){
send_event(
global_ws,
{
"action": "dom_load_fail",
"data": {
id: page.tabId,
url: page.url,
error: page.statusLine.trim()
}
}
);
}
},
{ urls: ["<all_urls>"] }
);
browser.webNavigation.onErrorOccurred.addListener(function(page){
if(connected === false){ return; }
if(
connected === false ||
// must be an error in parent frame
page.frameId !== 0 ||
// ignore HSTS error. See:
// https://bugzilla.mozilla.org/show_bug.cgi?id=1801326
page.error == "Error code 2152398850" ||
// page-load abort
page.error == "NS_BINDING_ABORTED"
){
return;
}
send_event(
global_ws,
{
"action": "dom_load_fail",
"data": {
id: page.tabId
id: page.tabId,
url: page.url,
error: page.error
}
}
);