diff options
Diffstat (limited to 'chromium/chrome/browser/extensions/api/messaging')
3 files changed, 23 insertions, 11 deletions
diff --git a/chromium/chrome/browser/extensions/api/messaging/chrome_messaging_delegate.cc b/chromium/chrome/browser/extensions/api/messaging/chrome_messaging_delegate.cc index ff4cc1c31a6..a236b6b0709 100644 --- a/chromium/chrome/browser/extensions/api/messaging/chrome_messaging_delegate.cc +++ b/chromium/chrome/browser/extensions/api/messaging/chrome_messaging_delegate.cc @@ -86,8 +86,13 @@ std::unique_ptr<base::DictionaryValue> ChromeMessagingDelegate::MaybeGetTabInfo( // reached as a result of a tab (or content script) messaging the extension. // We need the extension to see the sender so that it can validate if it // trusts it or not. - return ExtensionTabUtil::CreateTabObject( - web_contents, ExtensionTabUtil::kDontScrubTab, nullptr) + // TODO(tjudkins): Adjust scrubbing behavior in this situation to not scrub + // the last committed URL, but do scrub the pending URL based on + // permissions. + ExtensionTabUtil::ScrubTabBehavior scrub_tab_behavior = { + ExtensionTabUtil::kDontScrubTab, ExtensionTabUtil::kDontScrubTab}; + return ExtensionTabUtil::CreateTabObject(web_contents, scrub_tab_behavior, + nullptr) ->ToValue(); } return nullptr; diff --git a/chromium/chrome/browser/extensions/api/messaging/native_messaging_apitest.cc b/chromium/chrome/browser/extensions/api/messaging/native_messaging_apitest.cc index 33042b32456..3e6af3e0cc7 100644 --- a/chromium/chrome/browser/extensions/api/messaging/native_messaging_apitest.cc +++ b/chromium/chrome/browser/extensions/api/messaging/native_messaging_apitest.cc @@ -33,7 +33,8 @@ IN_PROC_BROWSER_TEST_F(ExtensionApiTest, UserLevelNativeMessaging) { class TestProcessManagerObserver : public ProcessManagerObserver { public: - TestProcessManagerObserver() : observer_(this) {} + TestProcessManagerObserver() = default; + ~TestProcessManagerObserver() override = default; void WaitForProcessShutdown(ProcessManager* process_manager, const std::string& extension_id) { @@ -57,21 +58,29 @@ class TestProcessManagerObserver : public ProcessManagerObserver { } std::string extension_id_; - ScopedObserver<ProcessManager, TestProcessManagerObserver> observer_; + ScopedObserver<ProcessManager, ProcessManagerObserver> observer_{this}; base::OnceClosure quit_; DISALLOW_COPY_AND_ASSIGN(TestProcessManagerObserver); }; +class NativeMessagingApiTest : public ExtensionApiTest { + public: + NativeMessagingApiTest() { + feature_list_.InitAndEnableFeature(features::kOnConnectNative); + } + + private: + base::test::ScopedFeatureList feature_list_; +}; + // Disabled on Windows due to timeouts; see https://crbug.com/984897. #if defined(OS_WIN) #define MAYBE_NativeMessagingLaunch DISABLED_NativeMessagingLaunch #else #define MAYBE_NativeMessagingLaunch NativeMessagingLaunch #endif -IN_PROC_BROWSER_TEST_F(ExtensionApiTest, MAYBE_NativeMessagingLaunch) { - base::test::ScopedFeatureList features; - features.InitAndEnableFeature(features::kOnConnectNative); +IN_PROC_BROWSER_TEST_F(NativeMessagingApiTest, MAYBE_NativeMessagingLaunch) { ProcessManager::SetEventPageIdleTimeForTesting(1); ProcessManager::SetEventPageSuspendingTimeForTesting(1); extensions::ScopedTestNativeMessagingHost test_host; @@ -112,10 +121,8 @@ IN_PROC_BROWSER_TEST_F(ExtensionApiTest, MAYBE_NativeMessagingLaunch) { // natively-initiated connections is not allowed. The test extension expects the // channel to be immediately closed with an error. IN_PROC_BROWSER_TEST_F( - ExtensionApiTest, + NativeMessagingApiTest, NativeMessagingLaunch_LaunchFromNativeUnsupportedByNativeHost) { - base::test::ScopedFeatureList features; - features.InitAndEnableFeature(features::kOnConnectNative); ProcessManager::SetEventPageIdleTimeForTesting(1); ProcessManager::SetEventPageSuspendingTimeForTesting(1); extensions::ScopedTestNativeMessagingHost test_host; diff --git a/chromium/chrome/browser/extensions/api/messaging/native_process_launcher.cc b/chromium/chrome/browser/extensions/api/messaging/native_process_launcher.cc index edfdcbf0bc5..e8480b47786 100644 --- a/chromium/chrome/browser/extensions/api/messaging/native_process_launcher.cc +++ b/chromium/chrome/browser/extensions/api/messaging/native_process_launcher.cc @@ -258,7 +258,7 @@ void NativeProcessLauncherImpl::Core::DoLaunchOnThreadPool( base::Value args(base::Value::Type::LIST); args.GetList().reserve(reconnect_command_line.argv().size()); for (const auto& arg : reconnect_command_line.argv()) { - args.GetList().emplace_back(arg); + args.Append(arg); } std::string encoded_reconnect_command; bool success = |