[cr148] Fix TorProfileManager shutdown ordering to avoid ScopedObservation dangling pointer
This change introduces an explicit `Shutdown()` method on `TorProfileManager`
and invokes it during `StartTearDown()` to ensure its
`BrowserCollectionObserver` is destroyed before dependent services are torn
down. Without this, the observer could outlive objects it observes, leading to a
dangling pointer during cleanup. Calling `Shutdown()` at this point guarantees
safe observer teardown and prevents the crash.
This fixed many browser tests that were dying like this:
[49620:48832:0404/110059.954:ERROR:base\allocator\partition_alloc_support.cc:682] A freed allocation is still referenced by a dangling pointer at exit, or at test end. Leaked raw_ptr/raw_ref could cause PartitionAlloc's quarantine memory bloat.
Memory was released on:
Task trace:
No active task.
brave_browser_tests!base::debug::CollectStackTrace [0x7ff7b1788375+15] (C:\work\cr148\brave-browser\src\base\debug\stack_trace_win.cc:383)
brave_browser_tests!base::debug::StackTrace::StackTrace [0x7ff7b179f82c+10c] (C:\work\cr148\brave-browser\src\base\debug\stack_trace.cc:281)
brave_browser_tests!base::allocator::`anonymous namespace'::DanglingRawPtrDetected [0x7ff7b178d35e+3ee] (C:\work\cr148\brave-browser\src\base\allocator\partition_alloc_support.cc:437)
brave_browser_tests!allocator_shim::internal::PartitionAllocFunctionsInternal<16,2>::FreeWithSize [0x7ff7b1983c4a+445a] (C:\work\cr148\brave-browser\src\base\allocator\partition_allocator\src\partition_alloc\shim\allocator_shim_default_dispatch_to_partition_alloc.cc:540)
brave_browser_tests!BraveBrowserProcessImpl::PostDestroyThreads [0x7ff7b01c001e+e] (C:\work\cr148\brave-browser\src\brave\browser\brave_browser_process_impl.cc:258)
brave_browser_tests!ChromeBrowserMainParts_ChromiumImpl::PostDestroyThreads [0x7ff7b01d3dff+6f] (C:\work\cr148\brave-browser\src\chrome\browser\chrome_browser_main.cc:2237)
brave_browser_tests!content::BrowserMainLoop::ShutdownThreadsAndCleanUp [0x7ff7ab8427d7+7b7] (C:\work\cr148\brave-browser\src\content\browser\browser_main_loop.cc:1284)
brave_browser_tests!content::BrowserMainRunnerImpl::Shutdown [0x7ff7ab844a96+106] (C:\work\cr148\brave-browser\src\content\browser\browser_main_runner_impl.cc:177)
brave_browser_tests!content::BrowserMain [0x7ff7ab83d74e+12e] (C:\work\cr148\brave-browser\src\content\browser\browser_main.cc:44)
brave_browser_tests!content::RunBrowserProcessMain [0x7ff7ae69c245+145] (C:\work\cr148\brave-browser\src\content\app\content_main_runner_impl.cc:696)
brave_browser_tests!content::ContentMainRunnerImpl::RunBrowser [0x7ff7ae69efe4+674] (C:\work\cr148\brave-browser\src\content\app\content_main_runner_impl.cc:1320)
brave_browser_tests!content::ContentMainRunnerImpl::Run [0x7ff7ae69e904+804] (C:\work\cr148\brave-browser\src\content\app\content_main_runner_impl.cc:1150)
brave_browser_tests!content::RunContentProcess [0x7ff7ae698314+544] (C:\work\cr148\brave-browser\src\content\app\content_main.cc:358)
brave_browser_tests!content::ContentMain [0x7ff7ae6984d3+43] (C:\work\cr148\brave-browser\src\content\app\content_main.cc:371)
brave_browser_tests!content::BrowserTestBase::SetUp [0x7ff7bb82dd79+1309] (C:\work\cr148\brave-browser\src\content\public\test\browser_test_base.cc:615)
brave_browser_tests!InProcessBrowserTest::SetUp [0x7ff7b0ab6276+1d6] (C:\work\cr148\brave-browser\src\chrome\test\base\in_process_browser_test.cc:558)
brave_browser_tests!testing::Test::Run [0x7ff7af921d7e+de] (C:\work\cr148\brave-browser\src\third_party\googletest\src\googletest\src\gtest.cc:2744)
brave_browser_tests!testing::TestInfo::Run [0x7ff7af92324f+23f] (C:\work\cr148\brave-browser\src\third_party\googletest\src\googletest\src\gtest.cc:2895)
brave_browser_tests!testing::TestSuite::Run [0x7ff7af9241d7+527] (C:\work\cr148\brave-browser\src\third_party\googletest\src\googletest\src\gtest.cc:3072)
brave_browser_tests!testing::internal::UnitTestImpl::RunAllTests [0x7ff7af934007+847] (C:\work\cr148\brave-browser\src\third_party\googletest\src\googletest\src\gtest.cc:6063)
brave_browser_tests!testing::UnitTest::Run [0x7ff7af93373f+15f] (C:\work\cr148\brave-browser\src\third_party\googletest\src\googletest\src\gtest.cc:5602)
brave_browser_tests!base::TestSuite::Run [0x7ff7bb855f6d+dd] (C:\work\cr148\brave-browser\src\base\test\test_suite.cc:440)
brave_browser_tests!ChromeTestSuiteRunner::RunTestSuite [0x7ff7bc719bee+ae] (C:\work\cr148\brave-browser\src\chrome\test\base\chrome_test_launcher.cc:106)
brave_browser_tests!ChromeTestLauncherDelegate::RunTestSuite [0x7ff7bc719f4d+cd] (C:\work\cr148\brave-browser\src\chrome\test\base\chrome_test_launcher.cc:155)
brave_browser_tests!content::LaunchTestsInternal [0x7ff7bb82a7d6+4e6] (C:\work\cr148\brave-browser\src\content\public\test\test_launcher.cc:423)
brave_browser_tests!content::LaunchTests [0x7ff7bb82ae73+133] (C:\work\cr148\brave-browser\src\content\public\test\test_launcher.cc:518)
brave_browser_tests!LaunchChromeTests [0x7ff7bc71a5a6+116] (C:\work\cr148\brave-browser\src\chrome\test\base\chrome_test_launcher.cc:360)
brave_browser_tests!main [0x7ff7bc71afca+ea] (C:\work\cr148\brave-browser\src\brave\test\base\browser_tests_main.cc:66)
brave_browser_tests!__scrt_common_main_seh [0x7ff7bce26da8+10c] (D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288)
KERNEL32!BaseThreadInitThunk [0x7ffc3347e8d7+17]
ntdll!RtlUserThreadStart [0x7ffc356ac48c+2c]
[49620:48832:0404/110104.699:ERROR:base\allocator\partition_alloc_support.cc:699] Dangling reference from:
[49620:48832:0404/110104.699:ERROR:base\allocator\partition_alloc_support.cc:700] brave_browser_tests!partition_alloc::internal::base::debug::CollectStackTrace [0x7ff7b1910942+12] (C:\work\cr148\brave-browser\src\base\allocator\partition_allocator\src\partition_alloc\partition_alloc_base\debug\stack_trace_win.cc:103)
brave_browser_tests!base::internal::InstanceTracer::TraceImpl [0x7ff7b19100ae+1fe] (C:\work\cr148\brave-browser\src\base\allocator\partition_allocator\src\partition_alloc\pointers\instance_tracer.cc:66)
brave_browser_tests!base::ScopedObservation<brave_rewards::RewardsService,brave_rewards::RewardsServiceObserver,0>::Observe [0x7ff7a6070a98+128] (C:\work\cr148\brave-browser\src\base\scoped_observation.h:117)
brave_browser_tests!base::NoDestructor<TorProfileManager>::NoDestructor<> [0x7ff7af7f2e46+66] (C:\work\cr148\brave-browser\src\base\no_destructor.h:99)
brave_browser_tests!TorProfileManager::GetInstance [0x7ff7af7f2dd2+52] (C:\work\cr148\brave-browser\src\brave\browser\tor\tor_profile_manager.cc:82)
brave_browser_tests!extensions::BraveExtensionManagement::OnTorDisabledChanged [0x7ff7a6281e06+16] (C:\work\cr148\brave-browser\src\brave\browser\extensions\brave_extension_management.cc:63)
brave_browser_tests!base::RepeatingCallback<void ()>::Run [0x7ff7a62b063d+8d] (C:\work\cr148\brave-browser\src\base\functional\callback.h:363)
brave_browser_tests!base::internal::Invoker<base::internal::FunctorTraits<const `lambda at ..\..\base\functional\callback_helpers.h:119:25' &,const base::RepeatingCallback<void ()> &>,base::internal::BindState<0,0,0,`lambda at ..\..\base\functional\callback_helpers.h:119:25' [0x7ff7ac3554d9+39] (C:\work\cr148\brave-browser\src\base\functional\bind_internal.h:989)
brave_browser_tests!base::RepeatingCallback<void (const std::__Cr::basic_string<char,std::__Cr::char_traits<char>,std::__Cr::allocator<char> > &)>::Run [0x7ff7a659eb32+a2] (C:\work\cr148\brave-browser\src\base\functional\callback.h:347)
brave_browser_tests!PrefChangeRegistrar::OnPreferenceChanged [0x7ff7b0ca4ac1+81] (C:\work\cr148\brave-browser\src\components\prefs\pref_change_registrar.cc:107)
brave_browser_tests!PrefNotifierImpl::FireObservers [0x7ff7b0ca0717+6b7] (C:\work\cr148\brave-browser\src\components\prefs\pref_notifier_impl.cc:108)
brave_browser_tests!PrefNotifierImpl::OnPreferenceChanged [0x7ff7b0c9fea1+91] (C:\work\cr148\brave-browser\src\components\prefs\pref_notifier_impl.cc:77)
brave_browser_tests!PrefValueStore::NotifyPrefChanged [0x7ff7b0c97228+118] (C:\work\cr148\brave-browser\src\components\prefs\pref_value_store.cc:140)
brave_browser_tests!PrefValueStore::PrefStoreKeeper::OnPrefValueChanged [0x7ff7b0c95452+d2] (C:\work\cr148\brave-browser\src\components\prefs\pref_value_store.cc:42)
brave_browser_tests!base::ObserverList<PrefStore::Observer,1,1,base::internal::CheckedObserverAdapter>::NotifyAllowReentrancy<void (PrefStore::Observer::*)(std::__Cr::basic_string_view<char,std::__Cr::char_traits<char> >),std::__Cr::basic_string_view<char,std::__Cr::char_tra [0x7ff7b0c8f35c+26c] (C:\work\cr148\brave-browser\src\base\observer_list.h:449)
brave_browser_tests!JsonPrefStore::SetValue [0x7ff7b0ca5e39+139] (C:\work\cr148\brave-browser\src\components\prefs\json_pref_store.cc:235)
brave_browser_tests!PrefService::SetUserPrefValue [0x7ff7b0c9a853+f3] (C:\work\cr148\brave-browser\src\components\prefs\pref_service.cc:525)
brave_browser_tests!PrefService::SetBoolean [0x7ff7b0c9a9e4+44] (C:\work\cr148\brave-browser\src\components\prefs\pref_service.cc:374)
brave_browser_tests!TorProfileServiceFactory::SetTorDisabled [0x7ff7af7f3fa4+54] (C:\work\cr148\brave-browser\src\brave\browser\tor\tor_profile_service_factory.cc:53)
brave_browser_tests!BraveLocalStateBrowserTest_TorEnableDisable_Test::RunTestOnMainThread [0x7ff7a67252dc+2c] (C:\work\cr148\brave-browser\src\brave\browser\tor\test\brave_local_state_browsertest.cc:27)
brave_browser_tests!content::BrowserTestBase::ProxyRunTestOnMainThreadLoop [0x7ff7bb82efaf+62f] (C:\work\cr148\brave-browser\src\content\public\test\browser_test_base.cc:1019)
brave_browser_tests!base::OnceCallback<void ()>::Run [0x7ff7a60b677d+8d] (C:\work\cr148\brave-browser\src\base\functional\callback.h:155)
brave_browser_tests!content::BrowserMainRunnerImpl::Run [0x7ff7ab844950+a0] (C:\work\cr148\brave-browser\src\content\browser\browser_main_runner_impl.cc:152)
brave_browser_tests!content::BrowserMain [0x7ff7ab83d6dc+bc] (C:\work\cr148\brave-browser\src\content\browser\browser_main.cc:32)
brave_browser_tests!content::RunBrowserProcessMain [0x7ff7ae69c245+145] (C:\work\cr148\brave-browser\src\content\app\content_main_runner_impl.cc:696)
brave_browser_tests!content::ContentMainRunnerImpl::RunBrowser [0x7ff7ae69efe4+674] (C:\work\cr148\brave-browser\src\content\app\content_main_runner_impl.cc:1320)
brave_browser_tests!content::ContentMainRunnerImpl::Run [0x7ff7ae69e904+804] (C:\work\cr148\brave-browser\src\content\app\content_main_runner_impl.cc:1150)
brave_browser_tests!content::RunContentProcess [0x7ff7ae698314+544] (C:\work\cr148\brave-browser\src\content\app\content_main.cc:358)
brave_browser_tests!content::ContentMain [0x7ff7ae6984d3+43] (C:\work\cr148\brave-browser\src\content\app\content_main.cc:371)
brave_browser_tests!content::BrowserTestBase::SetUp [0x7ff7bb82dd79+1309] (C:\work\cr148\brave-browser\src\content\public\test\browser_test_base.cc:615)
brave_browser_tests!InProcessBrowserTest::SetUp [0x7ff7b0ab6276+1d6] (C:\work\cr148\brave-browser\src\chrome\test\base\in_process_browser_test.cc:558)
brave_browser_tests!testing::Test::Run [0x7ff7af921d7e+de] (C:\work\cr148\brave-browser\src\third_party\googletest\src\googletest\src\gtest.cc:2744)
[49620:48832:0404/110104.729:FATAL:base\allocator\partition_alloc_support.cc:714] Check failed: !errors.
brave_browser_tests!base::debug::CollectStackTrace [0x7ff7b1788375+15] (C:\work\cr148\brave-browser\src\base\debug\stack_trace_win.cc:383)
brave_browser_tests!base::debug::StackTrace::StackTrace [0x7ff7b179f82c+10c] (C:\work\cr148\brave-browser\src\base\debug\stack_trace.cc:281)
brave_browser_tests!logging::LogMessage::Flush [0x7ff7b18e09e7+e7] (C:\work\cr148\brave-browser\src\base\logging.cc:709)
brave_browser_tests!logging::LogMessage::~LogMessage [0x7ff7b18e0889+19] (C:\work\cr148\brave-browser\src\base\logging.cc:698)
brave_browser_tests!logging::`anonymous namespace'::CheckLogMessage::~CheckLogMessage [0x7ff7b1906b4e+5e] (C:\work\cr148\brave-browser\src\base\check.cc:195)
brave_browser_tests!logging::NotReachedNoreturnError::~NotReachedNoreturnError [0x7ff7b190688b+b] (C:\work\cr148\brave-browser\src\base\check.cc:363)
brave_browser_tests!base::allocator::`anonymous namespace'::CheckDanglingRawPtrBufferEmpty [0x7ff7b178cf5d+7bd] (C:\work\cr148\brave-browser\src\base\allocator\partition_alloc_support.cc:714)
brave_browser_tests!base::OnceCallback<void ()>::Run [0x7ff7a60b677d+8d] (C:\work\cr148\brave-browser\src\base\functional\callback.h:155)
brave_browser_tests!base::AtExitManager::ProcessCallbacksNow [0x7ff7b190ab51+1a1] (C:\work\cr148\brave-browser\src\base\at_exit.cc:93)
brave_browser_tests!base::AtExitManager::~AtExitManager [0x7ff7b190a866+46] (C:\work\cr148\brave-browser\src\base\at_exit.cc:47)
brave_browser_tests!base::TestSuite::~TestSuite [0x7ff7bb8561b2+212] (C:\work\cr148\brave-browser\src\base\test\test_suite.cc:392)
brave_browser_tests!ChromeTestSuiteRunner::RunTestSuite [0x7ff7bc719c00+c0] (C:\work\cr148\brave-browser\src\chrome\test\base\chrome_test_launcher.cc:107)
brave_browser_tests!ChromeTestLauncherDelegate::RunTestSuite [0x7ff7bc719f4d+cd] (C:\work\cr148\brave-browser\src\chrome\test\base\chrome_test_launcher.cc:155)
brave_browser_tests!content::LaunchTestsInternal [0x7ff7bb82a7d6+4e6] (C:\work\cr148\brave-browser\src\content\public\test\test_launcher.cc:423)
brave_browser_tests!content::LaunchTests [0x7ff7bb82ae73+133] (C:\work\cr148\brave-browser\src\content\public\test\test_launcher.cc:518)
brave_browser_tests!LaunchChromeTests [0x7ff7bc71a5a6+116] (C:\work\cr148\brave-browser\src\chrome\test\base\chrome_test_launcher.cc:360)
brave_browser_tests!main [0x7ff7bc71afca+ea] (C:\work\cr148\brave-browser\src\brave\test\base\browser_tests_main.cc:66)
brave_browser_tests!__scrt_common_main_seh [0x7ff7bce26da8+10c] (D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288)
KERNEL32!BaseThreadInitThunk [0x7ffc3347e8d7+17]
ntdll!RtlUserThreadStart [0x7ffc356ac48c+2c]
Crash keys:
"shutdown-type" = "close"
"gpu-generation-intel" = "0"
"gpu-vsver" = "3.00"
"gpu-psver" = "3.00"
"gpu-driver" = "5.0.0"
"gpu-rev" = "0"
"gpu-subid" = "0x00000000"
"gpu_count" = "0"
"gpu-devid" = "0xffff"
"gpu-venid" = "0xffff"
"num-extensions" = "0"
"switch-39" = "about:blank"
"chrome-trace-id" = "2983336048609793865"
"reentry_guard_tls_slot" = "unused"
"variations" = "b357b792-3f4a17df,4b935545-3d47f4f4,9a38bae3-3d47f4f4,41ad04e1-e4065f40,2d1e43a3-3f4a17df,370ace14-3f4a17df,386dc267-3d47f4f4,d69d967d-3695c92e,3c8f75a1-8ff88d47,a4406b35-1657e2d6,408da146-1657e2d6,"
"num-experiments" = "11"
"LocaleDataPakExists-found_attrs" = "32"
"LocaleDataPakExists-found_path" = "C:\work\cr148\brave-browser\src\out\Static\locales\en-US.pak"
"switch-38" = "--component-updater=url-source=https://go-updater.brave.com/exte"
"switch-37" = "--variations-insecure-server-url=https://variations.brave.com/se"
"switch-36" = "--variations-server-url=https://variations.brave.com/seed"
"switch-35" = "--lso-url=https://no-thanks.invalid"
"switch-34" = "--origin-trial-public-key=bYUKPJoPnCxeNvu72j4EmPuK7tr1PAC7SHh8ld"
"switch-33" = "--enable-distillability-service"
"switch-32" = "--enable-dom-distiller"
"switch-31" = "--disable-domain-reliability"
"switch-30" = "--disable-platform-accessibility-integration"
"switch-29" = "--disable-gpu-process-for-dx12-info-collection"
"switch-28" = "--force-color-profile=srgb"
"switch-27" = "--override-use-software-gl-for-tests"
"switch-26" = "--disable-gl-drawing-for-tests"
"switch-25" = "--disable-ignore-duplicate-navs-for-testing"
"switch-24" = "--disable-backgrounding-occluded-windows"
"switch-23" = "--disable-d3d11-warp"
"switch-22" = "--log-gpu-control-list-decisions"
"switch-21" = "--dom-automation"
"switch-20" = "--log-missing-unload-ack"
"switch-19" = "--ipc-connection-timeout=30"
"switch-18" = "--browser-test"
"switch-17" = "--use-fake-device-for-media-stream"
"switch-16" = "--ip-address-space-overrides=127.0.0.1:0=public,[::1]:0=public"
"switch-15" = "--disable-updater-scheduler"
"switch-14" = "--disable-zero-browsers-open-for-tests"
"switch-13" = "--test-type=browser"
"switch-12" = "--disable-component-update"
"switch-11" = "--wm-window-animations-disabled"
"switch-10" = "--disable-default-apps"
"switch-9" = "--no-first-run"
"switch-8" = "--disable-auto-reload"
"switch-7" = "--user-data-dir=C:\Users\emerick\AppData\Local\Temp\scoped_dir58"
"switch-6" = "--test-launcher-retries-left=0"
"switch-5" = "--test-launcher-output=C:\Users\emerick\AppData\Local\Temp\scope"
"switch-4" = "--single-process-tests"
"switch-3" = "--gtest_filter=BraveLocalStateBrowserTest.TorEnableDisable"
"switch-2" = "--gtest_also_run_disabled_tests"
"switch-1" = "--disable-gpu-process-for-dx12-info-collection"
"num-switches" = "44"
"commandline-disabled-feature-5" = "TestFeatureForBrowserTest2"
"commandline-disabled-feature-4" = "SessionRestoreInfobar"
"commandline-disabled-feature-3" = "RestartNetworkServiceUnsandboxedForFailedLaunch"
"commandline-disabled-feature-2" = "PreconnectToSearch"
"commandline-disabled-feature-1" = "ExtensionDisableUnsupportedDeveloper"
"commandline-enabled-feature-2" = "TestFeatureForBrowserTest1"
"commandline-enabled-feature-1" = "*TestBlinkFeatureDefault"
Received fatal exception EXCEPTION_BREAKPOINT
brave_browser_tests!logging::LogMessage::HandleFatal [0x7ff7b18e13ea+2ca] (C:\work\cr148\brave-browser\src\base\logging.cc:1047)
brave_browser_tests!logging::LogMessage::Flush [0x7ff7b18e0f17+617] (C:\work\cr148\brave-browser\src\base\logging.cc:926)
brave_browser_tests!logging::LogMessage::~LogMessage [0x7ff7b18e0889+19] (C:\work\cr148\brave-browser\src\base\logging.cc:698)
brave_browser_tests!logging::`anonymous namespace'::CheckLogMessage::~CheckLogMessage [0x7ff7b1906b4e+5e] (C:\work\cr148\brave-browser\src\base\check.cc:195)
brave_browser_tests!logging::NotReachedNoreturnError::~NotReachedNoreturnError [0x7ff7b190688b+b] (C:\work\cr148\brave-browser\src\base\check.cc:363)
brave_browser_tests!base::allocator::`anonymous namespace'::CheckDanglingRawPtrBufferEmpty [0x7ff7b178cf5d+7bd] (C:\work\cr148\brave-browser\src\base\allocator\partition_alloc_support.cc:714)
brave_browser_tests!base::OnceCallback<void ()>::Run [0x7ff7a60b677d+8d] (C:\work\cr148\brave-browser\src\base\functional\callback.h:155)
brave_browser_tests!base::AtExitManager::ProcessCallbacksNow [0x7ff7b190ab51+1a1] (C:\work\cr148\brave-browser\src\base\at_exit.cc:93)
brave_browser_tests!base::AtExitManager::~AtExitManager [0x7ff7b190a866+46] (C:\work\cr148\brave-browser\src\base\at_exit.cc:47)
brave_browser_tests!base::TestSuite::~TestSuite [0x7ff7bb8561b2+212] (C:\work\cr148\brave-browser\src\base\test\test_suite.cc:392)
brave_browser_tests!ChromeTestSuiteRunner::RunTestSuite [0x7ff7bc719c00+c0] (C:\work\cr148\brave-browser\src\chrome\test\base\chrome_test_launcher.cc:107)
brave_browser_tests!ChromeTestLauncherDelegate::RunTestSuite [0x7ff7bc719f4d+cd] (C:\work\cr148\brave-browser\src\chrome\test\base\chrome_test_launcher.cc:155)
brave_browser_tests!content::LaunchTestsInternal [0x7ff7bb82a7d6+4e6] (C:\work\cr148\brave-browser\src\content\public\test\test_launcher.cc:423)
brave_browser_tests!content::LaunchTests [0x7ff7bb82ae73+133] (C:\work\cr148\brave-browser\src\content\public\test\test_launcher.cc:518)
brave_browser_tests!LaunchChromeTests [0x7ff7bc71a5a6+116] (C:\work\cr148\brave-browser\src\chrome\test\base\chrome_test_launcher.cc:360)
brave_browser_tests!main [0x7ff7bc71afca+ea] (C:\work\cr148\brave-browser\src\brave\test\base\browser_tests_main.cc:66)
brave_browser_tests!__scrt_common_main_seh [0x7ff7bce26da8+10c] (D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288)
KERNEL32!BaseThreadInitThunk [0x7ffc3347e8d7+17]
ntdll!RtlUserThreadStart [0x7ffc356ac48c+2c]
[1/1] BraveLocalStateBrowserTest.TorEnableDisable (25089 ms)
1 test failed on exit:
BraveLocalStateBrowserTest.TorEnableDisable (..\..\brave\browser\tor\test\brave_local_state_browsertest.cc:25)
Tests took 25 seconds.
Chromium change:
https://source.chromium.org/chromium/chromium/src/+/95eade2523f5c839c531717a7a0ff5eccbced8d2
commit 95eade2523f5c839c531717a7a0ff5eccbced8d2
Author: Sylvain Defresne <sdefresne@chromium.org>
Date: Thu Apr 2 09:20:00 2026 -0700
[base] Change default value of RawPtrTraits of ScopedObservation<...>
After all dangling ScopedObservation<...> have been identified, it is
possible to change the default value of RawPtrTraits to kEmpty (i.e.
not dangling).
Bug: 493572976
Change-Id: I18be9cd98e88d82a75c84a87cdd58440c71807b9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7720939
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Commit-Queue: Daniel Cheng <dcheng@chromium.org>
Auto-Submit: Sylvain Defresne <sdefresne@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1609274}