Files
Open_Ultra_SAST/benchmarks/pairs/agent-vfc/astroclaw-pw-session-1553a8/fixed.ts
T

39 lines
1.0 KiB
TypeScript
Raw Normal View History

// Provenance: P1R4N351/astroclaw (fixed).
// repo: P1R4N351/astroclaw
// commit: 1553a8adf123913cf7f1f1c75be4c4e5cd6c796b
// parent: d3eed2dc01328f21dd404477bb28e2740fa371a4
// commit_url: https://github.com/P1R4N351/astroclaw/commit/1553a8adf123913cf7f1f1c75be4c4e5cd6c796b
// cve:
// license: MIT
// function: isTopLevelNavigationRequest
// relpath: extensions/browser/src/browser/pw-session.ts
// provenance: agent
// mechanism: source_reaches_sink
function isTopLevelNavigationRequest(page: Page, request: Request): boolean {
let sameMainFrame = false;
try {
sameMainFrame = request.frame() === page.mainFrame();
} catch {
// Frame resolution can fail during redirect/renderer churn; fail closed.
sameMainFrame = true;
}
if (!sameMainFrame) {
return false;
}
try {
if (request.isNavigationRequest()) {
return true;
}
} catch {
// Ignore and fall back to resource-type check below.
}
try {
return request.resourceType() === "document";
} catch {
return false;
}
}