diff --git a/extensions/browser/script_executor.cc b/extensions/browser/script_executor.cc index ea557e103e17e..a47ab472680fe 100644 --- a/extensions/browser/script_executor.cc +++ b/extensions/browser/script_executor.cc @@ -14,6 +14,7 @@ #include "base/dcheck_is_on.h" #include "base/functional/bind.h" #include "base/hash/hash.h" +#include "base/logging.h" #include "base/memory/raw_ptr.h" #include "base/memory/weak_ptr.h" #include "base/pickle.h" @@ -208,6 +209,13 @@ class Handler : public content::WebContentsObserver { return content::RenderFrameHost::FrameIterationAction::kContinue; } + // ---- POC instrumentation (observation only, does not change logic) ---- + LOG(ERROR) << "[POC][MaybeAddSubFrame] ext=" << host_id_.id + << " process=" << frame->GetProcess()->GetDeprecatedID() + << " url=" << frame->GetLastCommittedURL() + << " is_error_doc=" << frame->IsErrorDocument(); + // ---------------------------------------------------------------------- + if (!is_web_view_ && host_id_.type == mojom::HostID::HostType::kExtensions) { // TODO(crbug.com/502262220): We do permission checks in at least three @@ -216,10 +224,13 @@ class Handler : public content::WebContentsObserver { std::string error; if (!scripting::HasPermissionToInjectIntoFrame( *extension->permissions_data(), tab_id, frame, &error)) { + LOG(ERROR) << "[POC][MaybeAddSubFrame] -> DENIED (no host perm): " + << error; return content::RenderFrameHost::FrameIterationAction::kContinue; } } + LOG(ERROR) << "[POC][MaybeAddSubFrame] -> PUSHED to pending_render_frames_"; PushPendingRenderFrame(frame, ExtensionApiFrameIdMap::GetFrameId(frame)); return content::RenderFrameHost::FrameIterationAction::kContinue; } diff --git a/extensions/browser/script_injection_tracker.cc b/extensions/browser/script_injection_tracker.cc index 282701b10bf17..7a3b2ef75fc80 100644 --- a/extensions/browser/script_injection_tracker.cc +++ b/extensions/browser/script_injection_tracker.cc @@ -8,6 +8,7 @@ #include "base/check_is_test.h" #include "base/debug/crash_logging.h" +#include "base/logging.h" #include "base/memory/ptr_util.h" #include "base/memory/raw_ref.h" #include "base/strings/string_number_conversions.h" @@ -286,6 +287,17 @@ void HandleProgrammaticScriptInjection( RenderProcessHostUserData::GetOrCreate(*frame->GetProcess()); process_data.AddScript(script_type, extension.id()); + // ---- POC instrumentation (observation only) ---- + LOG(ERROR) << "[POC][ScriptInjectionTracker] AddScript(ext=" + << extension.id() + << ", process=" << frame->GetProcess()->GetDeprecatedID() + << ") via frame url=" << frame->GetLastCommittedURL() + << " is_error_doc=" << frame->IsErrorDocument() + << " -> DidProcessRunContentScriptFromExtension=" + << ScriptInjectionTracker::DidProcessRunContentScriptFromExtension( + *frame->GetProcess(), extension.id()); + // ------------------------------------------------ + URLLoaderFactoryManager::WillProgrammaticallyInjectContentScript( pass_key, frame, extension); }