Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prefer Pre Dec/Inc over Post Dec/Inc. #14

Closed
wants to merge 1 commit into from

Conversation

shahzadlone
Copy link

Change all post-increments(and post-decrements) to pre-increments(and pre-decrements) to save on copies.

For example consider the following:

class Integer {

  public:

  // Sample implementation of pre-incrementing.
  Integer & operator++() {
    myInt += 1;
    return *this;
  }
  // Sample implementation of post-incrementing.
  const Integer operator++(int) {
    Integer temporary = *this;
    ++*this;
    return temporary;
  }

  private:

  int myInt;
};

The additional copy (temporary) in post-incrementing step is unnecessary (similar case for post-decrementing).

Change all post-increments(and post-decrements) to pre-increments(and pre-decrements) to save on copies.

For example consider the following:
```
class Integer {

  public:

  // Sample implementation of pre-incrementing.
  Integer & operator++() {
    myInt += 1;
    return *this;
  }
  // Sample implementation of post-incrementing.
  const Integer operator++(int) {
    Integer temporary = *this;
    ++*this;
    return temporary;
  }

  private:

  int myInt;
};
```

The additional copy (temporary) in post-incrementing step is unnecessary (similar case for post-decrementing).
@shahzadlone
Copy link
Author

Do I need to provide anything else?

aarongable pushed a commit that referenced this pull request Feb 19, 2019
This reverts commit 9b90992.

Reason for revert: 

Suspect: causes extensions_unittests failures on LinuxTests(dbg)(1).
https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/Linux%20Tests%20%28dbg%29%281%29/78307

https://logs.chromium.org/logs/chromium/buildbucket/cr-buildbucket.appspot.com/8921108554761775344/+/steps/extensions_unittests/0/logs/GinPortTest.TestJSDisconnect__status_CRASH_/0

---
[ RUN      ] GinPortTest.TestJSDisconnect

# Fatal error in ../../v8/src/base/atomic-utils.h, line 181
# Debug check failed: old >= amount (12874 vs. 13036).
#
#
#
#FailureMessage Object: 0x7ffe772cb570#0 0x7fcc15c67441 base::debug::CollectStackTrace()
#4 0x7fcbf34d4a98 V8_Fatal()
#5 0x7fcbf34d4805 v8::base::(anonymous namespace)::DefaultDcheckHandler()
#6 0x7fcc05ae9b34 v8::internal::Heap::FinalizeExternalString()
#7 0x7fcc05af3c0e v8::internal::Heap::ExternalStringTable::TearDown()
#8 0x7fcc05af37ed v8::internal::Heap::TearDown()
#9 0x7fcc05c1e90b v8::internal::Isolate::Deinit()
#10 0x7fcc05c1e595 v8::internal::Isolate::Delete()
#11 0x7fcc05184d38 gin::IsolateHolder::~IsolateHolder()
#12 0x5635a0f5381b std::__Cr::default_delete<>::operator()()
#13 0x5635a0f5375f std::__Cr::unique_ptr<>::reset()
#14 0x5635a193afd5 extensions::APIBindingTest::TearDown()
#15 0x56359fcf3ddf extensions::(anonymous namespace)::GinPortTest::TearDown()
#16 0x56359fd693ee testing::internal::HandleSehExceptionsInMethodIfSupported<>()
---

Original change's description:
> Update V8 to version 7.4.196.
> 
> Summary of changes available at:
> https://chromium.googlesource.com/v8/v8/+log/fee9be7a..9f489e34
> 
> Please follow these instructions for assigning/CC'ing issues:
> https://github.com/v8/v8/wiki/Triaging%20issues
> 
> Please close rolling in case of a roll revert:
> https://v8-roll.appspot.com/
> This only works with a Google account.
> 
> CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux-blink-rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel;luci.chromium.try:android_optional_gpu_tests_rel
> 
> TBR=hablich@chromium.org,v8-waterfall-sheriff@grotations.appspotmail.com
> 
> Change-Id: I2422c4d7e92bb63dba87b15567bde4a108536222
> Reviewed-on: https://chromium-review.googlesource.com/c/1477512
> Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
> Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
> Cr-Commit-Position: refs/heads/master@{#633211}

TBR=hablich@chromium.org,v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com,v8-waterfall-sheriff@grotations.appspotmail.com

Change-Id: I23bea79ec5187e545b0604b1f4706152e2aa037a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Cq-Include-Trybots: luci.chromium.try:linux-blink-rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel;luci.chromium.try:android_optional_gpu_tests_rel
Reviewed-on: https://chromium-review.googlesource.com/c/1477147
Reviewed-by: Takashi Sakamoto <tasak@google.com>
Commit-Queue: Takashi Sakamoto <tasak@google.com>
Cr-Commit-Position: refs/heads/master@{#633217}
aarongable pushed a commit that referenced this pull request Mar 12, 2019
…her CI."

This reverts commit 94a6b71.

Reason for revert: Causes CaptivePortal browser tests to fail on non_network_service_browser_tests

https://ci.chromium.org/p/chromium/builders/ci/linux-chromeos-dbg/11306

[2373:2373:0311/193039.746186:FATAL:cert_status_flags.cc(103)] Check failed: false.
#0 0x7f3a3fba0851 base::debug::CollectStackTrace()
#1 0x7f3a3fa01f8d base::debug::StackTrace::StackTrace()
#2 0x7f3a3fa01f45 base::debug::StackTrace::StackTrace()
#3 0x7f3a3fa3da17 logging::LogMessage::~LogMessage()
#4 0x7f3a3ec695f8 net::MapCertStatusToNetError()
#5 0x55c7467624ea SSLErrorNavigationThrottle::QueueShowInterstitial()
#6 0x55c74676244d SSLErrorNavigationThrottle::WillFailRequest()
#7 0x7f3a384b7d20 content::(anonymous namespace)::ExecuteNavigationEvent()
#8 0x7f3a384b71f8 content::NavigationThrottleRunner::ProcessInternal()
#9 0x7f3a384b6f67 content::NavigationThrottleRunner::ProcessNavigationEvent()
#10 0x7f3a384a00b7 content::NavigationHandleImpl::WillFailRequest()
#11 0x7f3a384ad0c2 content::NavigationRequest::OnRequestFailedInternal()
#12 0x7f3a384b230b content::NavigationRequest::OnRequestFailed()
#13 0x7f3a3862da3d content::NavigationURLLoaderImpl::OnComplete()
#14 0x7f3a37fa7257 base::internal::FunctorTraits<>::Invoke<>()

Original change's description:
> Fix SSL committed interstitials bugs when interacting with other CI.
> 
> The following bugs appeared when SB interstitials were being converted
> to committed interstitials:
> 
> -SSLErrorNavigationThrottle will not respect the cert whitelist when
> WillFailRequest is triggered by other interstitials. This CL adds a
> check.
> 
> -DidStartResourceResponse is called on SSLManager on all network
> errors, which are treated as valid SSL by the manager and cause cert
> exceptions to be cleared, this also happened prior to CI, but became
> obvious with Safe Browsing tests. This CL fixes this by only calling
> DidStartResourceResponse on net::OK.
> 
> Bug: 869894
> Change-Id: Ia1ce4a3130bf03ef7686ff2149a9ed49fb20c81b
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1504052
> Commit-Queue: Carlos IL <carlosil@chromium.org>
> Reviewed-by: Emily Stark <estark@chromium.org>
> Reviewed-by: John Abd-El-Malek <jam@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#639748}

TBR=jam@chromium.org,estark@chromium.org,carlosil@chromium.org

Change-Id: I4b16aa2ad17994953ca5fc0c0ca0e4aea1d03d4f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 869894
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1517312
Reviewed-by: Giovanni Ortuño Urquidi <ortuno@chromium.org>
Commit-Queue: Giovanni Ortuño Urquidi <ortuno@chromium.org>
Cr-Commit-Position: refs/heads/master@{#639804}
aarongable pushed a commit that referenced this pull request Mar 12, 2019
…her CI."

This reverts commit d4ee8e8.

Reason for revert: Fixed broken tests.

Original change's description:
> Revert "Fix SSL committed interstitials bugs when interacting with other CI."
>
> This reverts commit 94a6b71.
>
> Reason for revert: Causes CaptivePortal browser tests to fail on non_network_service_browser_tests
>
> https://ci.chromium.org/p/chromium/builders/ci/linux-chromeos-dbg/11306
>
> [2373:2373:0311/193039.746186:FATAL:cert_status_flags.cc(103)] Check failed: false.
> #0 0x7f3a3fba0851 base::debug::CollectStackTrace()
> #1 0x7f3a3fa01f8d base::debug::StackTrace::StackTrace()
> #2 0x7f3a3fa01f45 base::debug::StackTrace::StackTrace()
> #3 0x7f3a3fa3da17 logging::LogMessage::~LogMessage()
> #4 0x7f3a3ec695f8 net::MapCertStatusToNetError()
> #5 0x55c7467624ea SSLErrorNavigationThrottle::QueueShowInterstitial()
> #6 0x55c74676244d SSLErrorNavigationThrottle::WillFailRequest()
> #7 0x7f3a384b7d20 content::(anonymous namespace)::ExecuteNavigationEvent()
> #8 0x7f3a384b71f8 content::NavigationThrottleRunner::ProcessInternal()
> #9 0x7f3a384b6f67 content::NavigationThrottleRunner::ProcessNavigationEvent()
> #10 0x7f3a384a00b7 content::NavigationHandleImpl::WillFailRequest()
> #11 0x7f3a384ad0c2 content::NavigationRequest::OnRequestFailedInternal()
> #12 0x7f3a384b230b content::NavigationRequest::OnRequestFailed()
> #13 0x7f3a3862da3d content::NavigationURLLoaderImpl::OnComplete()
> #14 0x7f3a37fa7257 base::internal::FunctorTraits<>::Invoke<>()
>
> Original change's description:
> > Fix SSL committed interstitials bugs when interacting with other CI.
> >
> > The following bugs appeared when SB interstitials were being converted
> > to committed interstitials:
> >
> > -SSLErrorNavigationThrottle will not respect the cert whitelist when
> > WillFailRequest is triggered by other interstitials. This CL adds a
> > check.
> >
> > -DidStartResourceResponse is called on SSLManager on all network
> > errors, which are treated as valid SSL by the manager and cause cert
> > exceptions to be cleared, this also happened prior to CI, but became
> > obvious with Safe Browsing tests. This CL fixes this by only calling
> > DidStartResourceResponse on net::OK.
> >
> > Bug: 869894
> > Change-Id: Ia1ce4a3130bf03ef7686ff2149a9ed49fb20c81b
> > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1504052
> > Commit-Queue: Carlos IL <carlosil@chromium.org>
> > Reviewed-by: Emily Stark <estark@chromium.org>
> > Reviewed-by: John Abd-El-Malek <jam@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#639748}
>
> TBR=jam@chromium.org,estark@chromium.org,carlosil@chromium.org
>
> Change-Id: I4b16aa2ad17994953ca5fc0c0ca0e4aea1d03d4f
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: 869894
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1517312
> Reviewed-by: Giovanni Ortuño Urquidi <ortuno@chromium.org>
> Commit-Queue: Giovanni Ortuño Urquidi <ortuno@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#639804}

TBR=jam@chromium.org,estark@chromium.org,ortuno@chromium.org,carlosil@chromium.org

Change-Id: Ief647bc8b816714bc26c0e06ed1462ddb3ade665
Bug: 869894
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1518057
Reviewed-by: Mustafa Emre Acer <meacer@chromium.org>
Reviewed-by: Carlos IL <carlosil@chromium.org>
Commit-Queue: Carlos IL <carlosil@chromium.org>
Cr-Commit-Position: refs/heads/master@{#640054}
aarongable pushed a commit that referenced this pull request Mar 25, 2019
Recently, a best-effort task queue responsible for renderer memory
purges was introduced to MainThreadSchedulerImpl. Note that when the
scheduler is backgrounded, a memory purge is queued with a random
(between 1 and 4 minutes) delay. This interferes with the timing of
tests in MainThreadMetricsHelperUnittest. In order to ensure the test
works as expected, memory purging is disabled using a ScopedFeatureList.
The failure log is included below.

[ RUN      ] MainThreadMetricsHelperTest.Metrics_PerQueueType
[29553:29553:0323/080000.150787:13204898911:FATAL:thread_load_tracker.cc(81)] Check failed: time_ <= now (151000000 bogo-microseconds vs. 150000000 bogo-microseconds)
#0 0x7f243f4ac8d1 base::debug::CollectStackTrace()
#1 0x7f243f2f38dd base::debug::StackTrace::StackTrace()
#2 0x7f243f2f3895 base::debug::StackTrace::StackTrace()
#3 0x7f243f3335d3 logging::LogMessage::~LogMessage()
#4 0x7f24405e0158 blink::scheduler::ThreadLoadTracker::Advance()
#5 0x7f24405e05cb blink::scheduler::ThreadLoadTracker::RecordTaskTime()
#6 0x7f2440603cfa blink::scheduler::MainThreadMetricsHelper::RecordTaskMetrics()
#7 0x5563bb768664 blink::scheduler::MainThreadMetricsHelperTest::RunTask()
#8 0x5563bb765306 blink::scheduler::MainThreadMetricsHelperTest_Metrics_PerQueueType_Test::TestBody()
#9 0x5563bac6faae testing::internal::HandleSehExceptionsInMethodIfSupported<>()
#10 0x5563bac69422 testing::internal::HandleExceptionsInMethodIfSupported<>()
#11 0x5563bac5c6e3 testing::Test::Run()
#12 0x5563bac5cdd2 testing::TestInfo::Run()
#13 0x5563bac5d2f3 testing::TestSuite::Run()
#14 0x5563bac64f24 testing::internal::UnitTestImpl::RunAllTests()
#15 0x5563bac6fb3e testing::internal::HandleSehExceptionsInMethodIfSupported<>()
#16 0x5563bac6a512 testing::internal::HandleExceptionsInMethodIfSupported<>()
#17 0x5563bac64c47 testing::UnitTest::Run()
#18 0x5563bb9714e1 RUN_ALL_TESTS()
#19 0x5563bb96fb52 base::TestSuite::Run()
#20 0x5563bac3ec95 (anonymous namespace)::runTestSuite()
#21 0x5563bab77f72 base::internal::FunctorTraits<>::Invoke<>()
#22 0x5563bab77f32 base::internal::InvokeHelper<>::MakeItSo<>()
#23 0x5563bac3ee17 _ZN4base8internal7InvokerINS0_9BindStateIPFiPNS_9TestSuiteEEJNS0_17UnretainedWrapperIS3_EEEEEFivEE7RunImplIS6_NSt4__Cr5tupleIJS8_EEEJLm0EEEEiOT_OT0_NSD_16integer_sequenceImJXspT1_EEEE
#24 0x5563bac3edbe base::internal::Invoker<>::RunOnce()
#25 0x5563bb97804e _ZNO4base12OnceCallbackIFivEE3RunEv
#26 0x5563bb9742ad base::(anonymous namespace)::LaunchUnitTestsInternal()
#27 0x5563bb974115 base::LaunchUnitTests()
#28 0x5563bac3ebf4 main
#29 0x7f242e1dbf45 __libc_start_main
#30 0x5563ba71302a _start

Change-Id: I436abac9c6d6ef791ae17e898d6ffaf66e0e6a3b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1538002
Commit-Queue: Aditya Keerthi <adityakeerthi@google.com>
Reviewed-by: Alexander Timin <altimin@chromium.org>
Reviewed-by: François Doray <fdoray@chromium.org>
Cr-Commit-Position: refs/heads/master@{#643837}
nitrohsu pushed a commit to nitrohsu/chromium that referenced this pull request Mar 27, 2019
https://crrev.com/c/1180637 introduced a regression on the simplified
NTP. TextView in native page has a sizing issue when View#layout() is
invoked in unattached state. This CL makes layout not performed
in the corresponding state.

TBR=tedchoc@chromium.org, twellington@chromium.org

Bug: 876686
Change-Id: I81eff601781ec85e398ccc4d1ce555c441e20ddb
Reviewed-on: https://chromium-review.googlesource.com/1189682
Reviewed-by: Theresa <twellington@chromium.org>
Reviewed-by: Ted Choc <tedchoc@chromium.org>
Commit-Queue: Jinsuk Kim <jinsukkim@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#587916}(cherry picked from commit 2db4f03)
Reviewed-on: https://chromium-review.googlesource.com/1203470
Reviewed-by: Jinsuk Kim <jinsukkim@chromium.org>
Cr-Commit-Position: refs/branch-heads/3538@{chromium#14}
Cr-Branched-From: 79f7c91-refs/heads/master@{#587811}
aarongable pushed a commit that referenced this pull request Mar 28, 2019
Enable Kiosk mode and toggle on ChromeVox (Ctrl+Alt+Z):

 #0 0x56034507af89 base::debug::CollectStackTrace()
#1 0x560344fe2393 base::debug::StackTrace::StackTrace()
#2 0x56034507ab11 base::debug::(anonymous namespace)::StackDumpSignalHandler()
#3 0x7f48543a10c0 <unknown>
#4 0x560346530090 aura::Window::GetRootWindow()
#5 0x560347537eda ash::AccessibilityPanelLayoutManager::SetPanelBounds()
#6 0x56034387325b ash::mojom::AccessibilityControllerStubDispatch::Accept()
#7 0x5603450d0a2e mojo::internal::MultiplexRouter::ProcessIncomingMessage()
#8 0x5603450d02c5 mojo::internal::MultiplexRouter::Accept()
#9 0x5603450c9e8d mojo::Connector::DispatchMessage()
#10 0x5603450ca79e mojo::Connector::ReadAllAvailableMessages()
#11 0x5603450dd02e mojo::SimpleWatcher::OnHandleReady()
#12 0x56034502a838 base::TaskAnnotator::RunTask()
#13 0x560345039bbb base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWorkImpl()
#14 0x5603450399d7 base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoSomeWork()
#15 0x56034508f419 base::MessagePumpLibevent::Run()
#16 0x56034503a227 base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run()
#17 0x56034501587d base::RunLoop::Run()


Change-Id: I93c4b9965f0f4bf9aa360049c00c2546f70477fb
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1542571
Reviewed-by: Anastasia Helfinstein <anastasi@google.com>
Commit-Queue: David Tseng <dtseng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#645505}
aarongable pushed a commit that referenced this pull request Apr 2, 2019
This reverts commit 586ad03.

Reason for revert: This seems to be the source of a bunch of msan failures on the chromeos bot. Here's one such failure:

Uninitialized bytes in __msan_check_mem_is_initialized at offset 0 inside [0x71a000001800, 1444)
==31849==WARNING: MemorySanitizer: use-of-uninitialized-value
    #0 0x5644faae6979 in cc::PaintImageBuilder::TakePaintImage() ./../../cc/paint/paint_image_builder.cc:86:7
    #1 0x5644faae0a9e in cc::PaintImage::CreateFromBitmap(SkBitmap) ./../../cc/paint/paint_image.cc:101:8
    #2 0x5644f957c742 in gfx::ImageSkiaRep::ImageSkiaRep(SkBitmap const&, float) ./../../ui/gfx/image/image_skia_rep_default.cc:34:18
    #3 0x5644f954f283 in gfx::ImageSkia::CreateFrom1xBitmap(SkBitmap const&) ./../../ui/gfx/image/image_skia.cc:339:20
    #4 0x5644f7777610 in ash::MediaNotificationItem::MediaControllerImageChanged(media_session::mojom::MediaSessionImageType, SkBitmap const&) ./../../ash/media/media_notification_item.cc:113:23
    #5 0x5644f3d4dc56 in ash::MediaNotificationViewTest_UpdateIconFromItem_Test::TestBody() ./../../ash/media/media_notification_view_unittest.cc:661:14
    #6 0x5644f714acf0 in HandleExceptionsInMethodIfSupported<testing::Test, void> ./../../third_party/googletest/src/googletest/src/gtest.cc:0:0
    #7 0x5644f714acf0 in testing::Test::Run() ./../../third_party/googletest/src/googletest/src/gtest.cc:2499:0
    #8 0x5644f714e81c in testing::TestInfo::Run() ./../../third_party/googletest/src/googletest/src/gtest.cc:2675:11
    #9 0x5644f7150449 in testing::TestSuite::Run() ./../../third_party/googletest/src/googletest/src/gtest.cc:2805:28
    #10 0x5644f718b4f9 in testing::internal::UnitTestImpl::RunAllTests() ./../../third_party/googletest/src/googletest/src/gtest.cc:5243:44
    #11 0x5644f7189b48 in HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> ./../../third_party/googletest/src/googletest/src/gtest.cc:0:0
    #12 0x5644f7189b48 in testing::UnitTest::Run() ./../../third_party/googletest/src/googletest/src/gtest.cc:4845:0
    #13 0x5644f837c46a in RUN_ALL_TESTS ./../../third_party/googletest/src/googletest/include/gtest/gtest.h:2469:46
    #14 0x5644f837c46a in base::TestSuite::Run() ./../../base/test/test_suite.cc:316:0
    #15 0x5644f8385785 in Run ./../../base/callback.h:97:12
    #16 0x5644f8385785 in base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) ./../../base/test/launcher/unit_test_launcher.cc:225:0
    #17 0x5644f8384f17 in base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) ./../../base/test/launcher/unit_test_launcher.cc:575:10
    #18 0x5644f497124d in main ./../../ash/test/ash_unittests.cc:24:10
    #19 0x7f4c19b6ef44 in __libc_start_main ??:0:0
    #20 0x5644f2b94029 in _start ??:0:0

This is from https://logs.chromium.org/logs/chromium/buildbucket/cr-buildbucket.appspot.com/8917603702301191776/+/steps/non_single_process_mash_ash_unittests/0/logs/Deterministic_failure:_MediaNotificationViewTest.UpdateIconFromItem__status_CRASH_/0

Original change's description:
> cc: Add some msan initialization checks for images.
> 
> The memory cc gets for images (both bitmaps and generator backed) is
> expected to be initialized by the embedder before passing to skia during
> raster. Add some asserts to validate this so the source of bugs can be
> identified easily when the expectation is not met.
> 
> R=​enne@chromium.org
> 
> Bug: 926219
> Change-Id: I3354a69555956f4d28b888483baef7195d5771a1
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1546669
> Commit-Queue: Khushal <khushalsagar@chromium.org>
> Commit-Queue: enne <enne@chromium.org>
> Auto-Submit: Khushal <khushalsagar@chromium.org>
> Reviewed-by: enne <enne@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#646003}

TBR=enne@chromium.org,khushalsagar@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: 926219
Change-Id: Ia12e5ecc348e4ff8d563d22abb925c423043efa5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1548557
Reviewed-by: Scott Violet <sky@chromium.org>
Commit-Queue: Adithya Srinivasan <adithyas@chromium.org>
Cr-Commit-Position: refs/heads/master@{#646798}
wwwsevolod pushed a commit to weblifeio/chromium-old-fork that referenced this pull request Apr 10, 2019
…in DOM tree

This is a workaround for crbug.com/845849.

In some buggy cases, we get ComputeVisibleSelectionInFlatTree() returning
non-null, but ComputeVisibleSelectionInDOMTree() returning null. This
makes FrameSelection::Contains() return true erroneously.

As we don't have a fix to the inconsistency, this patch adds a
workaround that, we call ComputeVisibleSelectionInDOMTree() first to
set the cached VisibleSelections to null also for flat tree, so that
the following computation does not work on a non-null VS in flat tree
erroneously.

Bug: 845849
Change-Id: I7255d8224b8b6e29d479dd635e2c4ee99b366fc1
Reviewed-on: https://chromium-review.googlesource.com/1072924
Reviewed-by: Yoshifumi Inoue <yosin@chromium.org>
Commit-Queue: Xiaocheng Hu <xiaochengh@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#561775}(cherry picked from commit b6f6b01)
Reviewed-on: https://chromium-review.googlesource.com/1075707
Reviewed-by: Xiaocheng Hu <xiaochengh@chromium.org>
Cr-Commit-Position: refs/branch-heads/3440@{chromium#14}
Cr-Branched-From: 010ddcf-refs/heads/master@{#561733}
hyowon pushed a commit to hyowon/chromium that referenced this pull request May 22, 2019
This reverts commit 6bb055b.

Reason for revert: P0 bug https://crbug.com/865882

Original change's description:
> tools/luci-go: remove old way of mapping isolate
>
> It's now only mapped via CIPD, which is the right solution going forward.
>
> Bug: 851596,865541
> Change-Id: I25ddd0e059c818fafbc5587b06ff35b6c733a16e
> Reviewed-on: https://chromium-review.googlesource.com/1143448
> Commit-Queue: Marc-Antoine Ruel <maruel@chromium.org>
> Reviewed-by: John Budorick <jbudorick@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#576550}

TBR=maruel@chromium.org,tandrii@chromium.org,jbudorick@chromium.org

Change-Id: I2d432e9c80379c41e22b7a1cfdb4ea3f54586baa
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 851596, 865541, 865882
Reviewed-on: https://chromium-review.googlesource.com/1145020
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#576823}(cherry picked from commit 31d0faa)
Reviewed-on: https://chromium-review.googlesource.com/1146841
Reviewed-by: John Budorick <jbudorick@google.com>
Cr-Commit-Position: refs/branch-heads/3497@{chromium#14}
Cr-Branched-From: 271eaf5-refs/heads/master@{#576753}
@aarongable aarongable closed this May 28, 2019
pdigennaro pushed a commit to washezium/washezium that referenced this pull request Jul 7, 2019
This whitelists management.installReplacementWebApp to specific
extensions as restrictions to ensure apps are related aren't yet
implemented on the Webstore.

For tests we need to generate manifest.json files based on the URL of
the related app. Hence we can't check in a static crx/extension. This
means that we need to provide a private key when generating the crx to
ensure that the extension ID stays the same across test runs.

(cherry picked from commit 17ec7e6)

Tbr: rdevlin.cronin@chromium.org
Bug: 968407
Change-Id: Ieceadeaf59011b7209fece3de06e89f2bea4b9e3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1635118
Commit-Queue: Raymes Khoury <raymes@chromium.org>
Reviewed-by: Devlin <rdevlin.cronin@chromium.org>
Reviewed-by: Ben Wells <benwells@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#665044}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1640579
Reviewed-by: Raymes Khoury <raymes@chromium.org>
Cr-Commit-Position: refs/branch-heads/3809@{chromium#14}
Cr-Branched-From: d82dec1-refs/heads/master@{#665002}
aarongable pushed a commit that referenced this pull request Jul 11, 2019
There was a race around |g_use_in_memory_db_for_testing| :

[ RUN      ] NonRecordingSiteDataCacheTest.EndToEnd
==================
WARNING: ThreadSanitizer: data race (pid=1484)
  Write of size 1 at 0x55e6654d29d0 by main thread:
    #0 ~AutoReset base/auto_reset.h:40:25 (unit_tests+0x42d690c)
    #1 operator() buildtools/third_party/libc++/trunk/include/memory:2338 (unit_tests+0x42d690c)
    #2 reset buildtools/third_party/libc++/trunk/include/memory:2651 (unit_tests+0x42d690c)
    #3 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (unit_tests+0x42d690c)
    #4 performance_manager::(anonymous namespace)::NonRecordingSiteDataCacheTest::~NonRecordingSiteDataCacheTest() chrome/browser/performance_manager/persistence/site_data/non_recording_site_data_cache_unittest.cc:30 (unit_tests+0x42d690c)
    #5 performance_manager::NonRecordingSiteDataCacheTest_EndToEnd_Test::~NonRecordingSiteDataCacheTest_EndToEnd_Test() chrome/browser/performance_manager/persistence/site_data/non_recording_site_data_cache_unittest.cc:66:1 (unit_tests+0x42d65d9)
    #6 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc (unit_tests+0x65f041e)
    #7 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2704 (unit_tests+0x65f041e)
    #8 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (unit_tests+0x65f0ef6)
    #9 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (unit_tests+0x6603366)
    #10 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (unit_tests+0x6602859)
    #11 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (unit_tests+0x6602859)
    #12 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (unit_tests+0x9dd5692)
    #13 base::TestSuite::Run() base/test/test_suite.cc:316 (unit_tests+0x9dd5692)
    #14 content::UnitTestTestSuite::Run() content/public/test/unittest_test_suite.cc:103:23 (unit_tests+0x9ee213f)
    #15 Invoke<int (content::UnitTestTestSuite::*)(), content::UnitTestTestSuite *> base/bind_internal.h:499:12 (unit_tests+0x9dc3168)
    #16 MakeItSo<int (content::UnitTestTestSuite::*const &)(), content::UnitTestTestSuite *> base/bind_internal.h:599 (unit_tests+0x9dc3168)
    #17 RunImpl<int (content::UnitTestTestSuite::*const &)(), const std::__1::tuple<base::internal::UnretainedWrapper<content::UnitTestTestSuite> > &, 0> base/bind_internal.h:672 (unit_tests+0x9dc3168)
    #18 base::internal::Invoker<base::internal::BindState<int (content::UnitTestTestSuite::*)(), base::internal::UnretainedWrapper<content::UnitTestTestSuite> >, int ()>::Run(base::internal::BindStateBase*) base/bind_internal.h:654 (unit_tests+0x9dc3168)
    #19 Run base/callback.h:97:12 (unit_tests+0x9ddf24b)
    #20 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (unit_tests+0x9ddf24b)
    #21 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:494:10 (unit_tests+0x9ddf0b0)
    #22 main chrome/test/base/run_all_unittests.cc:35:10 (unit_tests+0x9dc3099)

  Previous read of size 1 at 0x55e6654d29d0 by thread T18:
    #0 performance_manager::LevelDBSiteDataStore::AsyncHelper::OpenOrCreateDatabaseImpl() chrome/browser/performance_manager/persistence/site_data/leveldb_site_data_store.cc:374:7 (unit_tests+0xb3e7762)
    #1 performance_manager::LevelDBSiteDataStore::AsyncHelper::OpenOrCreateDatabase() chrome/browser/performance_manager/persistence/site_data/leveldb_site_data_store.cc:195:30 (unit_tests+0xb3e7394)
    #2 Invoke<void (performance_manager::LevelDBSiteDataStore::AsyncHelper::*)(), performance_manager::LevelDBSiteDataStore::AsyncHelper *> base/bind_internal.h:499:12 (unit_tests+0xb3e9608)
    #3 MakeItSo<void (performance_manager::LevelDBSiteDataStore::AsyncHelper::*)(), performance_manager::LevelDBSiteDataStore::AsyncHelper *> base/bind_internal.h:599 (unit_tests+0xb3e9608)
    #4 RunImpl<void (performance_manager::LevelDBSiteDataStore::AsyncHelper::*)(), std::__1::tuple<base::internal::UnretainedWrapper<performance_manager::LevelDBSiteDataStore::AsyncHelper> >, 0> base/bind_internal.h:672 (unit_tests+0xb3e9608)
    #5 base::internal::Invoker<base::internal::BindState<void (performance_manager::LevelDBSiteDataStore::AsyncHelper::*)(), base::internal::UnretainedWrapper<performance_manager::LevelDBSiteDataStore::AsyncHelper> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (unit_tests+0xb3e9608)
    #6 Run base/callback.h:97:12 (unit_tests+0xacb91d5)
    #7 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/task/common/task_annotator.cc:142 (unit_tests+0xacb91d5)
    #8 base::internal::TaskTracker::RunBlockShutdown(base::internal::Task*) base/task/thread_pool/task_tracker.cc:773:19 (unit_tests+0xacdde01)
    #9 RunTaskWithShutdownBehavior base/task/thread_pool/task_tracker.cc:788:7 (unit_tests+0xacdd825)
    #10 base::internal::TaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker.cc:617 (unit_tests+0xacdd825)
    #11 base::internal::TaskTrackerPosix::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker_posix.cc:24:16 (unit_tests+0xad5bfc4)
    #12 base::test::ScopedTaskEnvironment::TestTaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/test/scoped_task_environment.cc:663:46 (unit_tests+0x9dd0a08)
    #13 base::internal::TaskTracker::RunAndPopNextTask(base::internal::RegisteredTaskSource) base/task/thread_pool/task_tracker.cc:479:5 (unit_tests+0xacdd119)
    #14 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:320:34 (unit_tests+0xacf08cd)
    #15 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (unit_tests+0xacf0561)
    #16 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (unit_tests+0xacf03cf)
    #17 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (unit_tests+0xad5cbb4)

  Location is global 'performance_manager::(anonymous namespace)::g_use_in_memory_db_for_testing' of size 1 at 0x55e6654d29d0 (unit_tests+0x0000132b39d0)

  Thread T18 'ThreadPoolForeg' (tid=1837, running) created by main thread at:
    #0 pthread_create /b/swarming/w/ir/cache/builder/src/third_party/llvm/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:989:3 (unit_tests+0x3bd013b)
    #1 base::(anonymous namespace)::CreateThread(unsigned long, bool, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:120:13 (unit_tests+0xad5c5c7)
    #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:246:10 (unit_tests+0xad5c4c5)
    #3 base::internal::WorkerThread::Start(base::WorkerThreadObserver*) base/task/thread_pool/worker_thread.cc:68:3 (unit_tests+0xaceff6d)
    #4 operator() base/task/thread_pool/thread_group_impl.cc:185:15 (unit_tests+0xace7e06)
    #5 ForEachWorker<(lambda at ../../base/task/thread_pool/thread_group_impl.cc:184:37)> base/task/thread_pool/thread_group_impl.cc:150 (unit_tests+0xace7e06)
    #6 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::FlushImpl() base/task/thread_pool/thread_group_impl.cc:184 (unit_tests+0xace7e06)
    #7 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::~ScopedWorkersExecutor() base/task/thread_pool/thread_group_impl.cc:103:30 (unit_tests+0xace47f4)
    #8 base::internal::ThreadGroupImpl::Start(int, int, base::TimeDelta, scoped_refptr<base::TaskRunner>, base::WorkerThreadObserver*, base::internal::ThreadGroup::WorkerEnvironment, base::Optional<base::TimeDelta>) base/task/thread_pool/thread_group_impl.cc:425:1 (unit_tests+0xace4799)
    #9 base::internal::ThreadPoolImpl::Start(base::ThreadPoolInstance::InitParams const&, base::WorkerThreadObserver*) base/task/thread_pool/thread_pool_impl.cc:197:11 (unit_tests+0xace0133)
    #10 base::test::ScopedTaskEnvironment::InitializeThreadPool() base/test/scoped_task_environment.cc:391:30 (unit_tests+0x9dcf8fc)
    #11 base::test::ScopedTaskEnvironment::ScopedTaskEnvironment(base::test::ScopedTaskEnvironment::MainThreadType, base::test::ScopedTaskEnvironment::ThreadPoolExecutionMode, base::test::ScopedTaskEnvironment::NowSource, base::test::ScopedTaskEnvironment::ThreadingMode, bool, base::trait_helpers::NotATraitTag) base/test/scoped_task_environment.cc:348:5 (unit_tests+0x9dcf2bc)
    #12 base::test::ScopedTaskEnvironment::ScopedTaskEnvironment<base::test::ScopedTaskEnvironment::SubclassCreatesDefaultTaskRunner, base::test::ScopedTaskEnvironment::MainThreadType, void>(base::test::ScopedTaskEnvironment::SubclassCreatesDefaultTaskRunner, base::test::ScopedTaskEnvironment::MainThreadType) base/test/scoped_task_environment.h:161:9 (unit_tests+0x3c4e2f0)
    #13 content::TestBrowserThreadBundle::TestBrowserThreadBundle<void>() content/public/test/test_browser_thread_bundle.h:131:13 (unit_tests+0x3c4e287)
    #14 performance_manager::(anonymous namespace)::NonRecordingSiteDataCacheTest::NonRecordingSiteDataCacheTest() chrome/browser/performance_manager/persistence/site_data/non_recording_site_data_cache_unittest.cc:23:3 (unit_tests+0x42d6a76)
    #15 NonRecordingSiteDataCacheTest_EndToEnd_Test chrome/browser/performance_manager/persistence/site_data/non_recording_site_data_cache_unittest.cc:66:1 (unit_tests+0x42d69d4)
    #16 testing::internal::TestFactoryImpl<performance_manager::NonRecordingSiteDataCacheTest_EndToEnd_Test>::CreateTest() third_party/googletest/src/googletest/include/gtest/internal/gtest-internal.h:460 (unit_tests+0x42d69d4)
    #17 HandleExceptionsInMethodIfSupported<testing::internal::TestFactoryBase, testing::Test *> third_party/googletest/src/googletest/src/gtest.cc (unit_tests+0x65f01df)
    #18 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2688 (unit_tests+0x65f01df)
    #19 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (unit_tests+0x65f0ef6)
    #20 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (unit_tests+0x6603366)
    #21 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (unit_tests+0x6602859)
    #22 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (unit_tests+0x6602859)
    #23 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (unit_tests+0x9dd5692)
    #24 base::TestSuite::Run() base/test/test_suite.cc:316 (unit_tests+0x9dd5692)
    #25 content::UnitTestTestSuite::Run() content/public/test/unittest_test_suite.cc:103:23 (unit_tests+0x9ee213f)
    #26 Invoke<int (content::UnitTestTestSuite::*)(), content::UnitTestTestSuite *> base/bind_internal.h:499:12 (unit_tests+0x9dc3168)
    #27 MakeItSo<int (content::UnitTestTestSuite::*const &)(), content::UnitTestTestSuite *> base/bind_internal.h:599 (unit_tests+0x9dc3168)
    #28 RunImpl<int (content::UnitTestTestSuite::*const &)(), const std::__1::tuple<base::internal::UnretainedWrapper<content::UnitTestTestSuite> > &, 0> base/bind_internal.h:672 (unit_tests+0x9dc3168)
    #29 base::internal::Invoker<base::internal::BindState<int (content::UnitTestTestSuite::*)(), base::internal::UnretainedWrapper<content::UnitTestTestSuite> >, int ()>::Run(base::internal::BindStateBase*) base/bind_internal.h:654 (unit_tests+0x9dc3168)
    #30 Run base/callback.h:97:12 (unit_tests+0x9ddf24b)
    #31 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (unit_tests+0x9ddf24b)
    #32 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:494:10 (unit_tests+0x9ddf0b0)
    #33 main chrome/test/base/run_all_unittests.cc:35:10 (unit_tests+0x9dc3099)

The problem is that opening the DB (in LevelDBSiteDataStore::AsyncHelper::OpenOrCreateDatabaseImpl)
is done asynchronously, and by the time we get there the AutoReset might
have been destroyed. Waiting for the DB to be initialized fixes this.

This reverts commit b7310e3.

Bug: 961336
Change-Id: Ia7d9367b10857837340358d7a516c26b87d0cebf
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1682668
Reviewed-by: Chris Hamilton <chrisha@chromium.org>
Commit-Queue: Sébastien Marchand <sebmarchand@chromium.org>
Cr-Commit-Position: refs/heads/master@{#676639}
aarongable pushed a commit that referenced this pull request Jul 26, 2019
This reverts commit a2103b5.

Reason for revert: Only Fido Cl before failures in
FidoGetAssertionHandlerTest.* started: 
https://ci.chromium.org/p/chromium/builders/ci/Mac%20ASan%2064%20Tests%20%281%29/55166

Log: 
[ RUN      ] FidoGetAssertionHandlerTest.SuccessWithOnlyInternalTransportAllowed
=================================================================
==86183==ERROR: AddressSanitizer: requested allocation size 0xbebebe00bebebe00 (0xbebebe00bebece00 after adjustments for alignment, red zones etc.) exceeds maximum supported size of 0x10000000000 (thread T0)
    #0 0x113961c0d in __sanitizer_mz_malloc ??:0:0
    #1 0x7fff63b001bc in malloc_zone_malloc ??:0:0
    #2 0x7fff3ba12b7b in __CFStringDecodeByteStream3 ??:0:0
    #3 0x7fff3b9ee8a5 in __CFStringCreateImmutableFunnel3 ??:0:0
    #4 0x7fff3b9fc50c in CFStringCreateWithBytes ??:0:0
    #5 0x10a49f7ee in base::SysUTF8ToNSString(base::BasicStringPiece<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >) ??:0:0
    #6 0x10ab34881 in device::fido::mac::FindCredentialsImpl(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::set<std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >, std::__1::less<std::__1::vector<unsigned char, std::__1::allocator<unsigned char> > >, std::__1::allocator<std::__1::vector<unsigned char, std::__1::allocator<unsigned char> > > > const&, LAContext*) ??:0:0
    #7 0x10ab34496 in device::fido::mac::FindCredentialsInKeychain(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::set<std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >, std::__1::less<std::__1::vector<unsigned char, std::__1::allocator<unsigned char> > >, std::__1::allocator<std::__1::vector<unsigned char, std::__1::allocator<unsigned char> > > > const&, LAContext*) ??:0:0
    #8 0x10ab1988a in device::fido::mac::TouchIdAuthenticator::HasCredentialForGetAssertionRequest(device::CtapGetAssertionRequest const&) ??:0:0
    #9 0x10aa6c35b in device::GetAssertionRequestHandler::AuthenticatorAdded(device::FidoDiscoveryBase*, device::FidoAuthenticator*) ??:0:0
    #10 0x10aa57795 in device::FidoDeviceDiscovery::AddDevice(std::__1::unique_ptr<device::FidoDevice, std::__1::default_delete<device::FidoDevice> >) ??:0:0
    #11 0x103f5dd56 in device::FidoGetAssertionHandlerTest_SuccessWithOnlyInternalTransportAllowed_Test::TestBody() ??:0:0
    #12 0x10438ec30 in testing::Test::Run() ??:0:0
    #13 0x10439139a in testing::TestInfo::Run() ??:0:0
    #14 0x104392a26 in testing::TestSuite::Run() ??:0:0
    #15 0x1043c0236 in testing::internal::UnitTestImpl::RunAllTests() ??:0:0
    #16 0x1043bee1c in testing::UnitTest::Run() ??:0:0
    #17 0x10a6fc90a in base::TestSuite::Run() ??:0:0
    #18 0x10a738fa1 in base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) ??:0:0
    #19 0x10a738b48 in base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) ??:0:0
    #20 0x1040af3cc in main ??:0:0
    #21 0x7fff63957014 in start ??:0:0

==86183==HINT: if you don't care about these errors you may set allocator_may_return_null=1
SUMMARY: AddressSanitizer: allocation-size-too-big (/b/s/w/ir/out/Release/libclang_rt.asan_osx_dynamic.dylib:x86_64+0x43c0d)
==86183==ABORTING

Original change's description:
> [webauthn] Refactor Platform Discovery
> 
> This change moves the platform discovery logic from AuthenticatorCommon
> into TouchIdDiscovery, which is injected directly into
> FidoRequestHandlerBase. This streamlines the device discovery process
> for platform authenticators and allows testing them through the virtual
> authenticator environment.
> 
> Additionally, this change uncovered a bug on BLE device tests: they
> were relying on FidoRequestHandlerBase::notify_observer_callback
> never being called because SetPlatformAuthenticator wasn't called.
> 
> Bug: 981399
> Change-Id: Ic0b508c701447fb6228fd2fb8a44b4132370f330
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1699947
> Commit-Queue: Avi Drissman <avi@chromium.org>
> Auto-Submit: Nina Satragno <nsatragno@chromium.org>
> Reviewed-by: Avi Drissman <avi@chromium.org>
> Reviewed-by: Martin Kreichgauer <martinkr@google.com>
> Cr-Commit-Position: refs/heads/master@{#680857}

TBR=avi@chromium.org,nsatragno@chromium.org,martinkr@google.com

Change-Id: If6a20f444449936aa0fe24f7e0bd1536f9cc3989
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 981399
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1720237
Reviewed-by: Friedrich [CET] <fhorschig@chromium.org>
Commit-Queue: Friedrich [CET] <fhorschig@chromium.org>
Cr-Commit-Position: refs/heads/master@{#681218}
aarongable pushed a commit that referenced this pull request Aug 2, 2019
…en mode.

Upon entering the fullscreen/locked-fullscreen while the chromeVox panel is working, You can see an empty bar in the top of the screen.
1. The fullscreen rect y dimension starts after the height of the chromeVox panel, and as we don't want the chromeVox panel to be displayed, its height should be removed from the calculations.

UPDATE: This issue got fixed by another colleague.
So I added a unittest, and removed two workarounds were added to fix this issue in the locked-fullscreen mode.
(one was to disable chromevox panel upon starting the lockedscreen mode, and the other was to hide the vox panel specifically for the locked fullscreen mode)

When a window is set to fullscreen screen_util::GetFullscreenWindowBoundsInParent & AccessibilityPanelLayoutManager::UpdateWindowBounds() are called twice with this stacktraces order:

[23272:23272:0723/164119.757770:ERROR:screen_util.cc(47)] ayaaa #0 0x0000081162bc base::debug::CollectStackTrace()
#1 0x0000080a6c88 base::debug::StackTrace::StackTrace()
#2 0x000009a8b57c ash::screen_util::GetFullscreenWindowBoundsInParent()
#3 0x000009b93e62 ash::wm::DefaultState::UpdateBoundsFromState()
#4 0x000009b93da4 ash::wm::DefaultState::EnterToNextState()
#5 0x000009b93c2e ash::wm::DefaultState::HandleTransitionEvents()
#6 0x000009b92e3e ash::wm::WindowState::OnWindowPropertyChanged()
#7 0x000008d085f6 aura::Window::AfterPropertyChange()
#8 0x0000082c62fc ui::PropertyHandler::SetPropertyInternal()
#9 0x000008d0324c ui::PropertyHandler::SetProperty<>()
#10 0x000009268956 views::Widget::SetFullscreen()
#11 0x00000a088c28 BrowserView::ProcessFullscreen()
#12 0x000009f48638 FullscreenController::EnterFullscreenModeInternal()
#13 0x000009f47c98 FullscreenController::ToggleFullscreenModeInternal()
#14 0x000009f47bba FullscreenController::ToggleBrowserFullscreenMode()
#15 0x00000a0b45a8 (anonymous namespace)::BrowserWindowStateDelegate::ToggleFullscreen()
#16 0x000009b93fc0 ash::wm::ToggleFullScreen()
#17 0x000009b9177e ash::wm::WindowState::OnWMEvent()
#18 0x000009a153ca ash::accelerators::ToggleFullscreen()
#19 0x000009a13f72 ash::(anonymous namespace)::HandleToggleFullscreen()
#20 0x000009a12332 ash::AcceleratorControllerImpl::AcceleratorPressed()
#21 0x000009253988 ui::AcceleratorManager::Process()
#22 0x000009ac225a ash::PreTargetAcceleratorHandler::ProcessAccelerator()
....
#80 0x0000eae970a2 __libc_start_main

[23272:23272:0723/164121.271202:ERROR:accessibility_panel_layout_manager.cc(103)] ayaaa #0 0x0000081162bc base::debug::CollectStackTrace()
#1 0x0000080a6c88 base::debug::StackTrace::StackTrace()
#2 0x000009a190fa ash::AccessibilityPanelLayoutManager::UpdateWindowBounds()
#3 0x0000099ebd12 display::DisplayManager::NotifyMetricsChanged()
#4 0x0000099ebf5a display::DisplayManager::UpdateWorkAreaOfDisplay()
#5 0x000009a33610 ash::WindowTreeHostManager::UpdateWorkAreaOfDisplayNearestWindow()
#6 0x000009a94ec6 ash::ShelfLayoutManager::UpdateBoundsAndOpacity()
#7 0x000009a93680 ash::ShelfLayoutManager::SetState()
#8 0x000009a932be ash::ShelfLayoutManager::UpdateVisibilityState()
#9 0x000009b96428 ash::WorkspaceLayoutManager::SetChildBounds()
#10 0x000009b8f6e4 ash::wm::SetBoundsInScreen()
#11 0x000009276346 views::NativeWidgetAura::SetBounds()
#12 0x000009225b72 views::BubbleDialogDelegateView::SizeToContents()
#13 0x000009269980 views::Widget::OnNativeWidgetMove()
#14 0x000009276cd4 views::NativeWidgetAura::OnBoundsChanged()
#15 0x00000a0b4332 BrowserFrameAsh::OnBoundsChanged()
#16 0x000008d0978c aura::Window::OnLayerBoundsChanged()
#17 0x000008d19a6e ui::Layer::SetBoundsFromAnimation()
#18 0x000008d0730c aura::Window::SetBoundsInternal()
#19 0x000009b929a6 ash::wm::WindowState::SetBoundsDirect()
#20 0x000009b93f0e ash::wm::DefaultState::UpdateBoundsFromState()
#21 0x000009b93da4 ash::wm::DefaultState::EnterToNextState()
#22 0x000009b93c2e ash::wm::DefaultState::HandleTransitionEvents()
#23 0x000009b92e3e ash::wm::WindowState::OnWindowPropertyChanged()
#24 0x000008d085f6 aura::Window::AfterPropertyChange()
#25 0x0000082c62fc ui::PropertyHandler::SetPropertyInternal()
#26 0x000008d0324c ui::PropertyHandler::SetProperty<>()
#27 0x000009268956 views::Widget::SetFullscreen()
#28 0x00000a088c28 BrowserView::ProcessFullscreen()
#29 0x000009f48638 FullscreenController::EnterFullscreenModeInternal()
#30 0x000009f47c98 FullscreenController::ToggleFullscreenModeInternal()
#31 0x000009f47bba FullscreenController::ToggleBrowserFullscreenMode()
#32 0x00000a0b45a8 (anonymous namespace)::BrowserWindowStateDelegate::ToggleFullscreen()
#33 0x000009b93fc0 ash::wm::ToggleFullScreen()
#34 0x000009b9177e ash::wm::WindowState::OnWMEvent()
#35 0x000009a153ca ash::accelerators::ToggleFullscreen()
#36 0x000009a13f72 ash::(anonymous namespace)::HandleToggleFullscreen()
#37 0x000009a12332 ash::AcceleratorControllerImpl::AcceleratorPressed()
#38 0x000009253988 ui::AcceleratorManager::Process()
#39 0x000009ac225a ash::PreTargetAcceleratorHandler::ProcessAccelerator()
#40 0x000009ab4ebe wm::AcceleratorFilter::OnKeyEvent()
....
#97 0x0000eae970a2 __libc_start_main

[23272:23272:0723/164123.029099:ERROR:screen_util.cc(47)] ayaaa #0 0x0000081162bc base::debug::CollectStackTrace()
#1 0x0000080a6c88 base::debug::StackTrace::StackTrace()
#2 0x000009a8b57c ash::screen_util::GetFullscreenWindowBoundsInParent()
#3 0x000009b93764 ash::wm::DefaultState::SetMaximizedOrFullscreenBounds()
#4 0x000009b9367a ash::wm::DefaultState::HandleWorkspaceEvents()
#5 0x000009b5ac5e ash::wm::BaseState::OnWMEvent()
#6 0x000009b9177e ash::wm::WindowState::OnWMEvent()
#7 0x000009b968e6 ash::WorkspaceLayoutManager::AdjustAllWindowsBoundsForWorkAreaChange()
#8 0x000009b96af8 ash::WorkspaceLayoutManager::OnDisplayMetricsChanged()
#9 0x0000099ebd12 display::DisplayManager::NotifyMetricsChanged()
#10 0x0000099ebf5a display::DisplayManager::UpdateWorkAreaOfDisplay()
#11 0x000009a33610 ash::WindowTreeHostManager::UpdateWorkAreaOfDisplayNearestWindow()
#12 0x000009a94ec6 ash::ShelfLayoutManager::UpdateBoundsAndOpacity()
#13 0x000009a93680 ash::ShelfLayoutManager::SetState()
#14 0x000009a932be ash::ShelfLayoutManager::UpdateVisibilityState()
#15 0x000009b96428 ash::WorkspaceLayoutManager::SetChildBounds()
#16 0x000009b8f6e4 ash::wm::SetBoundsInScreen()
#17 0x000009276346 views::NativeWidgetAura::SetBounds()
#18 0x000009225b72 views::BubbleDialogDelegateView::SizeToContents()
#19 0x000009269980 views::Widget::OnNativeWidgetMove()
#20 0x000009276cd4 views::NativeWidgetAura::OnBoundsChanged()
#21 0x00000a0b4332 BrowserFrameAsh::OnBoundsChanged()
#22 0x000008d0978c aura::Window::OnLayerBoundsChanged()
#23 0x000008d19a6e ui::Layer::SetBoundsFromAnimation()
#24 0x000008d0730c aura::Window::SetBoundsInternal()
#25 0x000009b929a6 ash::wm::WindowState::SetBoundsDirect()
#26 0x000009b93f0e ash::wm::DefaultState::UpdateBoundsFromState()
#27 0x000009b93da4 ash::wm::DefaultState::EnterToNextState()
#28 0x000009b93c2e ash::wm::DefaultState::HandleTransitionEvents()
#29 0x000009b92e3e ash::wm::WindowState::OnWindowPropertyChanged()
#30 0x000008d085f6 aura::Window::AfterPropertyChange()
#31 0x0000082c62fc ui::PropertyHandler::SetPropertyInternal()
#32 0x000008d0324c ui::PropertyHandler::SetProperty<>()
#33 0x000009268956 views::Widget::SetFullscreen()
#34 0x00000a088c28 BrowserView::ProcessFullscreen()
#35 0x000009f48638 FullscreenController::EnterFullscreenModeInternal()
#36 0x000009f47c98 FullscreenController::ToggleFullscreenModeInternal()
#37 0x000009f47bba FullscreenController::ToggleBrowserFullscreenMode()
#38 0x00000a0b45a8 (anonymous namespace)::BrowserWindowStateDelegate::ToggleFullscreen()
#39 0x000009b93fc0 ash::wm::ToggleFullScreen()
#40 0x000009b9177e ash::wm::WindowState::OnWMEvent()
#41 0x000009a153ca ash::accelerators::ToggleFullscreen()
#42 0x000009a13f72 ash::(anonymous namespace)::HandleToggleFullscreen()
#43 0x000009a12332 ash::AcceleratorControllerImpl::AcceleratorPressed()
#44 0x000009253988 ui::AcceleratorManager::Process()
#45 0x000009ac225a ash::PreTargetAcceleratorHandler::ProcessAccelerator()
#46 0x000009ab4ebe wm::AcceleratorFilter::OnKeyEvent()
....
#103 0x0000eae970a2 __libc_start_main

[23272:23272:0723/164124.932334:ERROR:accessibility_panel_layout_manager.cc(103)] ayaaa #0 0x0000081162bc base::debug::CollectStackTrace()
#1 0x0000080a6c88 base::debug::StackTrace::StackTrace()
#2 0x000009a190fa ash::AccessibilityPanelLayoutManager::UpdateWindowBounds()
#3 0x000009ab0dea ash::Shell::NotifyFullscreenStateChanged()
#4 0x000009b96a4c ash::WorkspaceLayoutManager::OnPostWindowStateTypeChange()
#5 0x000009b92738 ash::wm::WindowState::NotifyPostStateTypeChange()
#6 0x000009b93ddc ash::wm::DefaultState::EnterToNextState()
#7 0x000009b93c2e ash::wm::DefaultState::HandleTransitionEvents()
#8 0x000009b92e3e ash::wm::WindowState::OnWindowPropertyChanged()
#9 0x000008d085f6 aura::Window::AfterPropertyChange()
#10 0x0000082c62fc ui::PropertyHandler::SetPropertyInternal()
#11 0x000008d0324c ui::PropertyHandler::SetProperty<>()
#12 0x000009268956 views::Widget::SetFullscreen()
#13 0x00000a088c28 BrowserView::ProcessFullscreen()
#14 0x000009f48638 FullscreenController::EnterFullscreenModeInternal()
#15 0x000009f47c98 FullscreenController::ToggleFullscreenModeInternal()
#16 0x000009f47bba FullscreenController::ToggleBrowserFullscreenMode()
#17 0x00000a0b45a8 (anonymous namespace)::BrowserWindowStateDelegate::ToggleFullscreen()
#18 0x000009b93fc0 ash::wm::ToggleFullScreen()
#19 0x000009b9177e ash::wm::WindowState::OnWMEvent()
#20 0x000009a153ca ash::accelerators::ToggleFullscreen()
#21 0x000009a13f72 ash::(anonymous namespace)::HandleToggleFullscreen()
#22 0x000009a12332 ash::AcceleratorControllerImpl::AcceleratorPressed()
#23 0x000009253988 ui::AcceleratorManager::Process()
#24 0x000009ac225a ash::PreTargetAcceleratorHandler::ProcessAccelerator()
#25 0x000009ab4ebe wm::AcceleratorFilter::OnKeyEvent()
...
#82 0x0000eae970a2 __libc_start_main

Bug: 945794,959786
Change-Id: If04f70f2c71563e9660c18ca942ef4b798ebcd3a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1702312
Commit-Queue: Aya Elsayed <ayaelattar@google.com>
Reviewed-by: Mitsuru Oshima <oshima@chromium.org>
Reviewed-by: Aga Wronska <agawronska@chromium.org>
Reviewed-by: Ivan Šandrk <isandrk@chromium.org>
Cr-Commit-Position: refs/heads/master@{#683631}
aarongable pushed a commit that referenced this pull request Aug 5, 2019
…fullscreen mode."

This reverts commit 8d9e0bc.

Reason for revert: ScreenUtilTest.FullscreenWindowBoundsWithChromeVox
is crashing linux-chromeos-dbg. Example build:

https://ci.chromium.org/p/chromium/builders/ci/linux-chromeos-dbg/13699

Crash log:

https://logs.chromium.org/logs/chromium/buildbucket/cr-buildbucket.appspot.com/8906215673747190784/+/steps/ash_unittests/0/logs/Deterministic_failure:_ScreenUtilTest.FullscreenWindowBoundsWithChromeVox__status_CRASH_/0




Original change's description:
> [Locked Fullscreen] Fix the vox panel inconsistency with the fullscreen mode.
> 
> 
> Upon entering the fullscreen/locked-fullscreen while the chromeVox panel is working, You can see an empty bar in the top of the screen.
> 1. The fullscreen rect y dimension starts after the height of the chromeVox panel, and as we don't want the chromeVox panel to be displayed, its height should be removed from the calculations.
> 
> UPDATE: This issue got fixed by another colleague.
> So I added a unittest, and removed two workarounds were added to fix this issue in the locked-fullscreen mode.
> (one was to disable chromevox panel upon starting the lockedscreen mode, and the other was to hide the vox panel specifically for the locked fullscreen mode)
> 
> When a window is set to fullscreen screen_util::GetFullscreenWindowBoundsInParent & AccessibilityPanelLayoutManager::UpdateWindowBounds() are called twice with this stacktraces order:
> 
> [23272:23272:0723/164119.757770:ERROR:screen_util.cc(47)] ayaaa #0 0x0000081162bc base::debug::CollectStackTrace()
> #1 0x0000080a6c88 base::debug::StackTrace::StackTrace()
> #2 0x000009a8b57c ash::screen_util::GetFullscreenWindowBoundsInParent()
> #3 0x000009b93e62 ash::wm::DefaultState::UpdateBoundsFromState()
> #4 0x000009b93da4 ash::wm::DefaultState::EnterToNextState()
> #5 0x000009b93c2e ash::wm::DefaultState::HandleTransitionEvents()
> #6 0x000009b92e3e ash::wm::WindowState::OnWindowPropertyChanged()
> #7 0x000008d085f6 aura::Window::AfterPropertyChange()
> #8 0x0000082c62fc ui::PropertyHandler::SetPropertyInternal()
> #9 0x000008d0324c ui::PropertyHandler::SetProperty<>()
> #10 0x000009268956 views::Widget::SetFullscreen()
> #11 0x00000a088c28 BrowserView::ProcessFullscreen()
> #12 0x000009f48638 FullscreenController::EnterFullscreenModeInternal()
> #13 0x000009f47c98 FullscreenController::ToggleFullscreenModeInternal()
> #14 0x000009f47bba FullscreenController::ToggleBrowserFullscreenMode()
> #15 0x00000a0b45a8 (anonymous namespace)::BrowserWindowStateDelegate::ToggleFullscreen()
> #16 0x000009b93fc0 ash::wm::ToggleFullScreen()
> #17 0x000009b9177e ash::wm::WindowState::OnWMEvent()
> #18 0x000009a153ca ash::accelerators::ToggleFullscreen()
> #19 0x000009a13f72 ash::(anonymous namespace)::HandleToggleFullscreen()
> #20 0x000009a12332 ash::AcceleratorControllerImpl::AcceleratorPressed()
> #21 0x000009253988 ui::AcceleratorManager::Process()
> #22 0x000009ac225a ash::PreTargetAcceleratorHandler::ProcessAccelerator()
> ....
> #80 0x0000eae970a2 __libc_start_main
> 
> [23272:23272:0723/164121.271202:ERROR:accessibility_panel_layout_manager.cc(103)] ayaaa #0 0x0000081162bc base::debug::CollectStackTrace()
> #1 0x0000080a6c88 base::debug::StackTrace::StackTrace()
> #2 0x000009a190fa ash::AccessibilityPanelLayoutManager::UpdateWindowBounds()
> #3 0x0000099ebd12 display::DisplayManager::NotifyMetricsChanged()
> #4 0x0000099ebf5a display::DisplayManager::UpdateWorkAreaOfDisplay()
> #5 0x000009a33610 ash::WindowTreeHostManager::UpdateWorkAreaOfDisplayNearestWindow()
> #6 0x000009a94ec6 ash::ShelfLayoutManager::UpdateBoundsAndOpacity()
> #7 0x000009a93680 ash::ShelfLayoutManager::SetState()
> #8 0x000009a932be ash::ShelfLayoutManager::UpdateVisibilityState()
> #9 0x000009b96428 ash::WorkspaceLayoutManager::SetChildBounds()
> #10 0x000009b8f6e4 ash::wm::SetBoundsInScreen()
> #11 0x000009276346 views::NativeWidgetAura::SetBounds()
> #12 0x000009225b72 views::BubbleDialogDelegateView::SizeToContents()
> #13 0x000009269980 views::Widget::OnNativeWidgetMove()
> #14 0x000009276cd4 views::NativeWidgetAura::OnBoundsChanged()
> #15 0x00000a0b4332 BrowserFrameAsh::OnBoundsChanged()
> #16 0x000008d0978c aura::Window::OnLayerBoundsChanged()
> #17 0x000008d19a6e ui::Layer::SetBoundsFromAnimation()
> #18 0x000008d0730c aura::Window::SetBoundsInternal()
> #19 0x000009b929a6 ash::wm::WindowState::SetBoundsDirect()
> #20 0x000009b93f0e ash::wm::DefaultState::UpdateBoundsFromState()
> #21 0x000009b93da4 ash::wm::DefaultState::EnterToNextState()
> #22 0x000009b93c2e ash::wm::DefaultState::HandleTransitionEvents()
> #23 0x000009b92e3e ash::wm::WindowState::OnWindowPropertyChanged()
> #24 0x000008d085f6 aura::Window::AfterPropertyChange()
> #25 0x0000082c62fc ui::PropertyHandler::SetPropertyInternal()
> #26 0x000008d0324c ui::PropertyHandler::SetProperty<>()
> #27 0x000009268956 views::Widget::SetFullscreen()
> #28 0x00000a088c28 BrowserView::ProcessFullscreen()
> #29 0x000009f48638 FullscreenController::EnterFullscreenModeInternal()
> #30 0x000009f47c98 FullscreenController::ToggleFullscreenModeInternal()
> #31 0x000009f47bba FullscreenController::ToggleBrowserFullscreenMode()
> #32 0x00000a0b45a8 (anonymous namespace)::BrowserWindowStateDelegate::ToggleFullscreen()
> #33 0x000009b93fc0 ash::wm::ToggleFullScreen()
> #34 0x000009b9177e ash::wm::WindowState::OnWMEvent()
> #35 0x000009a153ca ash::accelerators::ToggleFullscreen()
> #36 0x000009a13f72 ash::(anonymous namespace)::HandleToggleFullscreen()
> #37 0x000009a12332 ash::AcceleratorControllerImpl::AcceleratorPressed()
> #38 0x000009253988 ui::AcceleratorManager::Process()
> #39 0x000009ac225a ash::PreTargetAcceleratorHandler::ProcessAccelerator()
> #40 0x000009ab4ebe wm::AcceleratorFilter::OnKeyEvent()
> ....
> #97 0x0000eae970a2 __libc_start_main
> 
> [23272:23272:0723/164123.029099:ERROR:screen_util.cc(47)] ayaaa #0 0x0000081162bc base::debug::CollectStackTrace()
> #1 0x0000080a6c88 base::debug::StackTrace::StackTrace()
> #2 0x000009a8b57c ash::screen_util::GetFullscreenWindowBoundsInParent()
> #3 0x000009b93764 ash::wm::DefaultState::SetMaximizedOrFullscreenBounds()
> #4 0x000009b9367a ash::wm::DefaultState::HandleWorkspaceEvents()
> #5 0x000009b5ac5e ash::wm::BaseState::OnWMEvent()
> #6 0x000009b9177e ash::wm::WindowState::OnWMEvent()
> #7 0x000009b968e6 ash::WorkspaceLayoutManager::AdjustAllWindowsBoundsForWorkAreaChange()
> #8 0x000009b96af8 ash::WorkspaceLayoutManager::OnDisplayMetricsChanged()
> #9 0x0000099ebd12 display::DisplayManager::NotifyMetricsChanged()
> #10 0x0000099ebf5a display::DisplayManager::UpdateWorkAreaOfDisplay()
> #11 0x000009a33610 ash::WindowTreeHostManager::UpdateWorkAreaOfDisplayNearestWindow()
> #12 0x000009a94ec6 ash::ShelfLayoutManager::UpdateBoundsAndOpacity()
> #13 0x000009a93680 ash::ShelfLayoutManager::SetState()
> #14 0x000009a932be ash::ShelfLayoutManager::UpdateVisibilityState()
> #15 0x000009b96428 ash::WorkspaceLayoutManager::SetChildBounds()
> #16 0x000009b8f6e4 ash::wm::SetBoundsInScreen()
> #17 0x000009276346 views::NativeWidgetAura::SetBounds()
> #18 0x000009225b72 views::BubbleDialogDelegateView::SizeToContents()
> #19 0x000009269980 views::Widget::OnNativeWidgetMove()
> #20 0x000009276cd4 views::NativeWidgetAura::OnBoundsChanged()
> #21 0x00000a0b4332 BrowserFrameAsh::OnBoundsChanged()
> #22 0x000008d0978c aura::Window::OnLayerBoundsChanged()
> #23 0x000008d19a6e ui::Layer::SetBoundsFromAnimation()
> #24 0x000008d0730c aura::Window::SetBoundsInternal()
> #25 0x000009b929a6 ash::wm::WindowState::SetBoundsDirect()
> #26 0x000009b93f0e ash::wm::DefaultState::UpdateBoundsFromState()
> #27 0x000009b93da4 ash::wm::DefaultState::EnterToNextState()
> #28 0x000009b93c2e ash::wm::DefaultState::HandleTransitionEvents()
> #29 0x000009b92e3e ash::wm::WindowState::OnWindowPropertyChanged()
> #30 0x000008d085f6 aura::Window::AfterPropertyChange()
> #31 0x0000082c62fc ui::PropertyHandler::SetPropertyInternal()
> #32 0x000008d0324c ui::PropertyHandler::SetProperty<>()
> #33 0x000009268956 views::Widget::SetFullscreen()
> #34 0x00000a088c28 BrowserView::ProcessFullscreen()
> #35 0x000009f48638 FullscreenController::EnterFullscreenModeInternal()
> #36 0x000009f47c98 FullscreenController::ToggleFullscreenModeInternal()
> #37 0x000009f47bba FullscreenController::ToggleBrowserFullscreenMode()
> #38 0x00000a0b45a8 (anonymous namespace)::BrowserWindowStateDelegate::ToggleFullscreen()
> #39 0x000009b93fc0 ash::wm::ToggleFullScreen()
> #40 0x000009b9177e ash::wm::WindowState::OnWMEvent()
> #41 0x000009a153ca ash::accelerators::ToggleFullscreen()
> #42 0x000009a13f72 ash::(anonymous namespace)::HandleToggleFullscreen()
> #43 0x000009a12332 ash::AcceleratorControllerImpl::AcceleratorPressed()
> #44 0x000009253988 ui::AcceleratorManager::Process()
> #45 0x000009ac225a ash::PreTargetAcceleratorHandler::ProcessAccelerator()
> #46 0x000009ab4ebe wm::AcceleratorFilter::OnKeyEvent()
> ....
> #103 0x0000eae970a2 __libc_start_main
> 
> [23272:23272:0723/164124.932334:ERROR:accessibility_panel_layout_manager.cc(103)] ayaaa #0 0x0000081162bc base::debug::CollectStackTrace()
> #1 0x0000080a6c88 base::debug::StackTrace::StackTrace()
> #2 0x000009a190fa ash::AccessibilityPanelLayoutManager::UpdateWindowBounds()
> #3 0x000009ab0dea ash::Shell::NotifyFullscreenStateChanged()
> #4 0x000009b96a4c ash::WorkspaceLayoutManager::OnPostWindowStateTypeChange()
> #5 0x000009b92738 ash::wm::WindowState::NotifyPostStateTypeChange()
> #6 0x000009b93ddc ash::wm::DefaultState::EnterToNextState()
> #7 0x000009b93c2e ash::wm::DefaultState::HandleTransitionEvents()
> #8 0x000009b92e3e ash::wm::WindowState::OnWindowPropertyChanged()
> #9 0x000008d085f6 aura::Window::AfterPropertyChange()
> #10 0x0000082c62fc ui::PropertyHandler::SetPropertyInternal()
> #11 0x000008d0324c ui::PropertyHandler::SetProperty<>()
> #12 0x000009268956 views::Widget::SetFullscreen()
> #13 0x00000a088c28 BrowserView::ProcessFullscreen()
> #14 0x000009f48638 FullscreenController::EnterFullscreenModeInternal()
> #15 0x000009f47c98 FullscreenController::ToggleFullscreenModeInternal()
> #16 0x000009f47bba FullscreenController::ToggleBrowserFullscreenMode()
> #17 0x00000a0b45a8 (anonymous namespace)::BrowserWindowStateDelegate::ToggleFullscreen()
> #18 0x000009b93fc0 ash::wm::ToggleFullScreen()
> #19 0x000009b9177e ash::wm::WindowState::OnWMEvent()
> #20 0x000009a153ca ash::accelerators::ToggleFullscreen()
> #21 0x000009a13f72 ash::(anonymous namespace)::HandleToggleFullscreen()
> #22 0x000009a12332 ash::AcceleratorControllerImpl::AcceleratorPressed()
> #23 0x000009253988 ui::AcceleratorManager::Process()
> #24 0x000009ac225a ash::PreTargetAcceleratorHandler::ProcessAccelerator()
> #25 0x000009ab4ebe wm::AcceleratorFilter::OnKeyEvent()
> ...
> #82 0x0000eae970a2 __libc_start_main
> 
> Bug: 945794,959786
> Change-Id: If04f70f2c71563e9660c18ca942ef4b798ebcd3a
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1702312
> Commit-Queue: Aya Elsayed <ayaelattar@google.com>
> Reviewed-by: Mitsuru Oshima <oshima@chromium.org>
> Reviewed-by: Aga Wronska <agawronska@chromium.org>
> Reviewed-by: Ivan Šandrk <isandrk@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#683631}

TBR=oshima@chromium.org,dtseng@chromium.org,isandrk@chromium.org,agawronska@chromium.org,ayaelattar@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: 945794, 959786
Change-Id: Iff0e849ffbba12b8a36079c2ba484e9285d75780
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1735720
Reviewed-by: Noel Gordon <noel@chromium.org>
Commit-Queue: Noel Gordon <noel@chromium.org>
Cr-Commit-Position: refs/heads/master@{#683888}
sammyyu pushed a commit to sammyyu/chromium that referenced this pull request Aug 30, 2019
…iew mode.""

This reverts commit f00acd8.

Reason for revert: crbug.com/863795

Original change's description:
> Reland "overview: Hide title bars before animating into overview mode."
> 
> This is a reland of a663e7f
> 
> The original cl causes some flaky tests with stack trace:
> 
> [16202:16202:0709/211202.910243:FATAL:single_thread_proxy.cc(237)] Check failed: task_runner_provider_->IsMainThread().
> #0 0x7f9b36f8672d base::debug::StackTrace::StackTrace()
> chromium#1 0x7f9b36c9d3fc base::debug::StackTrace::StackTrace()
> chromium#2 0x7f9b36d06dfd logging::LogMessage::~LogMessage()
> chromium#3 0x7f9b2b5692e8 cc::SingleThreadProxy::SetNeedsCommit()
> chromium#4 0x7f9b2b45ecef cc::LayerTreeHost::SetNeedsCommit()
> chromium#5 0x7f9b2b467426 cc::LayerTreeHost::SetMutatorsNeedCommit()
> chromium#6 0x7f9b0fd29981 cc::AnimationHost::SetNeedsCommit()
> chromium#7 0x7f9b0fd1962d cc::Animation::SetNeedsCommit()
> chromium#8 0x7f9b0fd41151 cc::KeyframeEffect::KeyframeModelAdded()
> chromium#9 0x7f9b0fd44e6c cc::KeyframeEffect::AddKeyframeModel()
> chromium#10 0x7f9b0fd17fbc cc::Animation::AddKeyframeModelForKeyframeEffect()
> chromium#11 0x7f9b0fd71a6d cc::SingleKeyframeEffectAnimation::AddKeyframeModel()
> chromium#12 0x7f9b28c83a95 ui::LayerAnimator::AddThreadedAnimation()
> chromium#13 0x7f9b28c7498e ui::(anonymous namespace)::ThreadedLayerAnimationElement::RequestEffectiveStart()
> chromium#14 0x7f9b28c71113 ui::LayerAnimationElement::Start()
> chromium#15 0x7f9b28c7cbe3 ui::LayerAnimationSequence::Start()
> chromium#16 0x7f9b28c84287 ui::LayerAnimator::StartSequenceImmediately()
> chromium#17 0x7f9b28c81251 ui::LayerAnimator::StartAnimation()
> chromium#18 0x7f9b28c80eb6 ui::LayerAnimator::SetTransform()
> chromium#19 0x7f9b28c6122e ui::Layer::SetTransform()
> chromium#20 0x7f9b28ded831 aura::Window::SetTransform()
> chromium#21 0x7f9b22b732df ash::ScopedTransformOverviewWindow::SetTransform()
> chromium#22 0x7f9b22b73f69 ash::ScopedTransformOverviewWindow::OnCompositingStarted()
> chromium#23 0x7f9b28c4d734 ui::Compositor::DidSubmitCompositorFrame()
> chromium#24 0x7f9b2b56cd05 cc::SingleThreadProxy::DoComposite()
> chromium#25 0x7f9b2b56e835 cc::SingleThreadProxy::ScheduledActionDrawIfPossible()
> chromium#26 0x7f9b2b3736fd cc::Scheduler::DrawIfPossible()
> chromium#27 0x7f9b2b36dbdc cc::Scheduler::ProcessScheduledActions()
> chromium#28 0x7f9b2b36d5fd cc::Scheduler::OnBeginImplFrameDeadline()
> 
> This cl makes that test skip waiting for composit when entering overview, like the tests
> in ash.
> 
> Original change's description:
> > overview: Hide title bars before animating into overview mode.
> >
> > The title bars should not visible while animating overview mode. This cl
> > hides the title bar if needed and waits until the next paint before
> > animating the windows. This will hide the title bar as expected while
> > keeping the benefits of DeferPaint.
> >
> > Test: manual
> > Bug: 843851
> > Change-Id: I99cf7ca39fd1ae14314ac406abd0fec999e2c024
> > Reviewed-on: https://chromium-review.googlesource.com/1112774
> > Reviewed-by: Mitsuru Oshima <oshima@chromium.org>
> > Reviewed-by: Tao Wu <wutao@chromium.org>
> > Commit-Queue: Sammie Quon <sammiequon@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#573552}
> 
> TBR=oshima@chromium.org
> 
> Bug: 843851
> Change-Id: I3a538250d5f6d42d6c73e218445080af533b54dc
> Reviewed-on: https://chromium-review.googlesource.com/1131874
> Commit-Queue: Sammie Quon <sammiequon@chromium.org>
> Reviewed-by: Sammie Quon <sammiequon@chromium.org>
> Reviewed-by: Michael Wasserman <msw@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#574209}

TBR=msw@chromium.org,oshima@chromium.org,sammiequon@chromium.org,wutao@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: 843851
Change-Id: Ib2744c7f677be40004b70a714cebe0a337f7c60b
Reviewed-on: https://chromium-review.googlesource.com/1142304
Reviewed-by: Sammie Quon <sammiequon@chromium.org>
Reviewed-by: Mitsuru Oshima <oshima@chromium.org>
Reviewed-by: Michael Wasserman <msw@chromium.org>
Commit-Queue: Sammie Quon <sammiequon@chromium.org>
Cr-Commit-Position: refs/heads/master@{#576250}
aarongable pushed a commit that referenced this pull request Sep 2, 2019
…fullscreen mode."

This is a reland of 8d9e0bc

Original change's description:
> [Locked Fullscreen] Fix the vox panel inconsistency with the fullscreen mode.
>
>
> Upon entering the fullscreen/locked-fullscreen while the chromeVox panel is working, You can see an empty bar in the top of the screen.
> 1. The fullscreen rect y dimension starts after the height of the chromeVox panel, and as we don't want the chromeVox panel to be displayed, its height should be removed from the calculations.
>
> UPDATE: This issue got fixed by another colleague.
> So I added a unittest, and removed two workarounds were added to fix this issue in the locked-fullscreen mode.
> (one was to disable chromevox panel upon starting the lockedscreen mode, and the other was to hide the vox panel specifically for the locked fullscreen mode)
>
> When a window is set to fullscreen screen_util::GetFullscreenWindowBoundsInParent & AccessibilityPanelLayoutManager::UpdateWindowBounds() are called twice with this stacktraces order:
>
> [23272:23272:0723/164119.757770:ERROR:screen_util.cc(47)] ayaaa #0 0x0000081162bc base::debug::CollectStackTrace()
> #1 0x0000080a6c88 base::debug::StackTrace::StackTrace()
> #2 0x000009a8b57c ash::screen_util::GetFullscreenWindowBoundsInParent()
> #3 0x000009b93e62 ash::wm::DefaultState::UpdateBoundsFromState()
> #4 0x000009b93da4 ash::wm::DefaultState::EnterToNextState()
> #5 0x000009b93c2e ash::wm::DefaultState::HandleTransitionEvents()
> #6 0x000009b92e3e ash::wm::WindowState::OnWindowPropertyChanged()
> #7 0x000008d085f6 aura::Window::AfterPropertyChange()
> #8 0x0000082c62fc ui::PropertyHandler::SetPropertyInternal()
> #9 0x000008d0324c ui::PropertyHandler::SetProperty<>()
> #10 0x000009268956 views::Widget::SetFullscreen()
> #11 0x00000a088c28 BrowserView::ProcessFullscreen()
> #12 0x000009f48638 FullscreenController::EnterFullscreenModeInternal()
> #13 0x000009f47c98 FullscreenController::ToggleFullscreenModeInternal()
> #14 0x000009f47bba FullscreenController::ToggleBrowserFullscreenMode()
> #15 0x00000a0b45a8 (anonymous namespace)::BrowserWindowStateDelegate::ToggleFullscreen()
> #16 0x000009b93fc0 ash::wm::ToggleFullScreen()
> #17 0x000009b9177e ash::wm::WindowState::OnWMEvent()
> #18 0x000009a153ca ash::accelerators::ToggleFullscreen()
> #19 0x000009a13f72 ash::(anonymous namespace)::HandleToggleFullscreen()
> #20 0x000009a12332 ash::AcceleratorControllerImpl::AcceleratorPressed()
> #21 0x000009253988 ui::AcceleratorManager::Process()
> #22 0x000009ac225a ash::PreTargetAcceleratorHandler::ProcessAccelerator()
> ....
> #80 0x0000eae970a2 __libc_start_main
>
> [23272:23272:0723/164121.271202:ERROR:accessibility_panel_layout_manager.cc(103)] ayaaa #0 0x0000081162bc base::debug::CollectStackTrace()
> #1 0x0000080a6c88 base::debug::StackTrace::StackTrace()
> #2 0x000009a190fa ash::AccessibilityPanelLayoutManager::UpdateWindowBounds()
> #3 0x0000099ebd12 display::DisplayManager::NotifyMetricsChanged()
> #4 0x0000099ebf5a display::DisplayManager::UpdateWorkAreaOfDisplay()
> #5 0x000009a33610 ash::WindowTreeHostManager::UpdateWorkAreaOfDisplayNearestWindow()
> #6 0x000009a94ec6 ash::ShelfLayoutManager::UpdateBoundsAndOpacity()
> #7 0x000009a93680 ash::ShelfLayoutManager::SetState()
> #8 0x000009a932be ash::ShelfLayoutManager::UpdateVisibilityState()
> #9 0x000009b96428 ash::WorkspaceLayoutManager::SetChildBounds()
> #10 0x000009b8f6e4 ash::wm::SetBoundsInScreen()
> #11 0x000009276346 views::NativeWidgetAura::SetBounds()
> #12 0x000009225b72 views::BubbleDialogDelegateView::SizeToContents()
> #13 0x000009269980 views::Widget::OnNativeWidgetMove()
> #14 0x000009276cd4 views::NativeWidgetAura::OnBoundsChanged()
> #15 0x00000a0b4332 BrowserFrameAsh::OnBoundsChanged()
> #16 0x000008d0978c aura::Window::OnLayerBoundsChanged()
> #17 0x000008d19a6e ui::Layer::SetBoundsFromAnimation()
> #18 0x000008d0730c aura::Window::SetBoundsInternal()
> #19 0x000009b929a6 ash::wm::WindowState::SetBoundsDirect()
> #20 0x000009b93f0e ash::wm::DefaultState::UpdateBoundsFromState()
> #21 0x000009b93da4 ash::wm::DefaultState::EnterToNextState()
> #22 0x000009b93c2e ash::wm::DefaultState::HandleTransitionEvents()
> #23 0x000009b92e3e ash::wm::WindowState::OnWindowPropertyChanged()
> #24 0x000008d085f6 aura::Window::AfterPropertyChange()
> #25 0x0000082c62fc ui::PropertyHandler::SetPropertyInternal()
> #26 0x000008d0324c ui::PropertyHandler::SetProperty<>()
> #27 0x000009268956 views::Widget::SetFullscreen()
> #28 0x00000a088c28 BrowserView::ProcessFullscreen()
> #29 0x000009f48638 FullscreenController::EnterFullscreenModeInternal()
> #30 0x000009f47c98 FullscreenController::ToggleFullscreenModeInternal()
> #31 0x000009f47bba FullscreenController::ToggleBrowserFullscreenMode()
> #32 0x00000a0b45a8 (anonymous namespace)::BrowserWindowStateDelegate::ToggleFullscreen()
> #33 0x000009b93fc0 ash::wm::ToggleFullScreen()
> #34 0x000009b9177e ash::wm::WindowState::OnWMEvent()
> #35 0x000009a153ca ash::accelerators::ToggleFullscreen()
> #36 0x000009a13f72 ash::(anonymous namespace)::HandleToggleFullscreen()
> #37 0x000009a12332 ash::AcceleratorControllerImpl::AcceleratorPressed()
> #38 0x000009253988 ui::AcceleratorManager::Process()
> #39 0x000009ac225a ash::PreTargetAcceleratorHandler::ProcessAccelerator()
> #40 0x000009ab4ebe wm::AcceleratorFilter::OnKeyEvent()
> ....
> #97 0x0000eae970a2 __libc_start_main
>
> [23272:23272:0723/164123.029099:ERROR:screen_util.cc(47)] ayaaa #0 0x0000081162bc base::debug::CollectStackTrace()
> #1 0x0000080a6c88 base::debug::StackTrace::StackTrace()
> #2 0x000009a8b57c ash::screen_util::GetFullscreenWindowBoundsInParent()
> #3 0x000009b93764 ash::wm::DefaultState::SetMaximizedOrFullscreenBounds()
> #4 0x000009b9367a ash::wm::DefaultState::HandleWorkspaceEvents()
> #5 0x000009b5ac5e ash::wm::BaseState::OnWMEvent()
> #6 0x000009b9177e ash::wm::WindowState::OnWMEvent()
> #7 0x000009b968e6 ash::WorkspaceLayoutManager::AdjustAllWindowsBoundsForWorkAreaChange()
> #8 0x000009b96af8 ash::WorkspaceLayoutManager::OnDisplayMetricsChanged()
> #9 0x0000099ebd12 display::DisplayManager::NotifyMetricsChanged()
> #10 0x0000099ebf5a display::DisplayManager::UpdateWorkAreaOfDisplay()
> #11 0x000009a33610 ash::WindowTreeHostManager::UpdateWorkAreaOfDisplayNearestWindow()
> #12 0x000009a94ec6 ash::ShelfLayoutManager::UpdateBoundsAndOpacity()
> #13 0x000009a93680 ash::ShelfLayoutManager::SetState()
> #14 0x000009a932be ash::ShelfLayoutManager::UpdateVisibilityState()
> #15 0x000009b96428 ash::WorkspaceLayoutManager::SetChildBounds()
> #16 0x000009b8f6e4 ash::wm::SetBoundsInScreen()
> #17 0x000009276346 views::NativeWidgetAura::SetBounds()
> #18 0x000009225b72 views::BubbleDialogDelegateView::SizeToContents()
> #19 0x000009269980 views::Widget::OnNativeWidgetMove()
> #20 0x000009276cd4 views::NativeWidgetAura::OnBoundsChanged()
> #21 0x00000a0b4332 BrowserFrameAsh::OnBoundsChanged()
> #22 0x000008d0978c aura::Window::OnLayerBoundsChanged()
> #23 0x000008d19a6e ui::Layer::SetBoundsFromAnimation()
> #24 0x000008d0730c aura::Window::SetBoundsInternal()
> #25 0x000009b929a6 ash::wm::WindowState::SetBoundsDirect()
> #26 0x000009b93f0e ash::wm::DefaultState::UpdateBoundsFromState()
> #27 0x000009b93da4 ash::wm::DefaultState::EnterToNextState()
> #28 0x000009b93c2e ash::wm::DefaultState::HandleTransitionEvents()
> #29 0x000009b92e3e ash::wm::WindowState::OnWindowPropertyChanged()
> #30 0x000008d085f6 aura::Window::AfterPropertyChange()
> #31 0x0000082c62fc ui::PropertyHandler::SetPropertyInternal()
> #32 0x000008d0324c ui::PropertyHandler::SetProperty<>()
> #33 0x000009268956 views::Widget::SetFullscreen()
> #34 0x00000a088c28 BrowserView::ProcessFullscreen()
> #35 0x000009f48638 FullscreenController::EnterFullscreenModeInternal()
> #36 0x000009f47c98 FullscreenController::ToggleFullscreenModeInternal()
> #37 0x000009f47bba FullscreenController::ToggleBrowserFullscreenMode()
> #38 0x00000a0b45a8 (anonymous namespace)::BrowserWindowStateDelegate::ToggleFullscreen()
> #39 0x000009b93fc0 ash::wm::ToggleFullScreen()
> #40 0x000009b9177e ash::wm::WindowState::OnWMEvent()
> #41 0x000009a153ca ash::accelerators::ToggleFullscreen()
> #42 0x000009a13f72 ash::(anonymous namespace)::HandleToggleFullscreen()
> #43 0x000009a12332 ash::AcceleratorControllerImpl::AcceleratorPressed()
> #44 0x000009253988 ui::AcceleratorManager::Process()
> #45 0x000009ac225a ash::PreTargetAcceleratorHandler::ProcessAccelerator()
> #46 0x000009ab4ebe wm::AcceleratorFilter::OnKeyEvent()
> ....
> #103 0x0000eae970a2 __libc_start_main
>
> [23272:23272:0723/164124.932334:ERROR:accessibility_panel_layout_manager.cc(103)] ayaaa #0 0x0000081162bc base::debug::CollectStackTrace()
> #1 0x0000080a6c88 base::debug::StackTrace::StackTrace()
> #2 0x000009a190fa ash::AccessibilityPanelLayoutManager::UpdateWindowBounds()
> #3 0x000009ab0dea ash::Shell::NotifyFullscreenStateChanged()
> #4 0x000009b96a4c ash::WorkspaceLayoutManager::OnPostWindowStateTypeChange()
> #5 0x000009b92738 ash::wm::WindowState::NotifyPostStateTypeChange()
> #6 0x000009b93ddc ash::wm::DefaultState::EnterToNextState()
> #7 0x000009b93c2e ash::wm::DefaultState::HandleTransitionEvents()
> #8 0x000009b92e3e ash::wm::WindowState::OnWindowPropertyChanged()
> #9 0x000008d085f6 aura::Window::AfterPropertyChange()
> #10 0x0000082c62fc ui::PropertyHandler::SetPropertyInternal()
> #11 0x000008d0324c ui::PropertyHandler::SetProperty<>()
> #12 0x000009268956 views::Widget::SetFullscreen()
> #13 0x00000a088c28 BrowserView::ProcessFullscreen()
> #14 0x000009f48638 FullscreenController::EnterFullscreenModeInternal()
> #15 0x000009f47c98 FullscreenController::ToggleFullscreenModeInternal()
> #16 0x000009f47bba FullscreenController::ToggleBrowserFullscreenMode()
> #17 0x00000a0b45a8 (anonymous namespace)::BrowserWindowStateDelegate::ToggleFullscreen()
> #18 0x000009b93fc0 ash::wm::ToggleFullScreen()
> #19 0x000009b9177e ash::wm::WindowState::OnWMEvent()
> #20 0x000009a153ca ash::accelerators::ToggleFullscreen()
> #21 0x000009a13f72 ash::(anonymous namespace)::HandleToggleFullscreen()
> #22 0x000009a12332 ash::AcceleratorControllerImpl::AcceleratorPressed()
> #23 0x000009253988 ui::AcceleratorManager::Process()
> #24 0x000009ac225a ash::PreTargetAcceleratorHandler::ProcessAccelerator()
> #25 0x000009ab4ebe wm::AcceleratorFilter::OnKeyEvent()
> ...
> #82 0x0000eae970a2 __libc_start_main
>
> Bug: 945794,959786
> Change-Id: If04f70f2c71563e9660c18ca942ef4b798ebcd3a
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1702312
> Commit-Queue: Aya Elsayed <ayaelattar@google.com>
> Reviewed-by: Mitsuru Oshima <oshima@chromium.org>
> Reviewed-by: Aga Wronska <agawronska@chromium.org>
> Reviewed-by: Ivan Šandrk <isandrk@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#683631}

TBR=ayaelattar@google.com

Bug: 945794, 959786
Change-Id: Ia0b5e750f2b0682e256aa3b1ffd78df9b5667a76
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1744411
Reviewed-by: Ivan Šandrk <isandrk@chromium.org>
Commit-Queue: Aya Elsayed <ayaelattar@google.com>
Cr-Commit-Position: refs/heads/master@{#692461}
pdigennaro pushed a commit to washezium/washezium that referenced this pull request Sep 13, 2019
If we decide that the non-AMP BeforeInputOrScroll variant is useful,
we'll want an AMP version to compare it to.

This change also cleans up metric descriptions in ukm.xml to no
longer refer to 'jank'.

(cherry picked from commit be98b1c)

Change-Id: Iee0f25b3ded5ce4667cd6c231acf9e7ea2b65515
Bug: 987652
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1717123
Reviewed-by: Steve Kobes <skobes@chromium.org>
Commit-Queue: Bryan McQuade <bmcquade@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#681373}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1724451
Cr-Commit-Position: refs/branch-heads/3865@{chromium#14}
Cr-Branched-From: 0cdcc61-refs/heads/master@{#681094}
aarongable pushed a commit that referenced this pull request Sep 24, 2019
This reverts commit de35a09.

Reason for revert:
Failing on all platforms.
https://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=WelcomeA11y.WelcomeFlow_color_contrast
https://ci.chromium.org/p/chromium/builders/ci/Mac10.12%20Tests/27248
[18374:18374:0923/204432.097393:ERROR:CONSOLE(49)] "Mocha test failed: WelcomeFlow_color_contrast Landing Page
Error: the string "Found 1 accessibility violations." was thrown, throw an Error :)
", source: file:///b/s/w/ir/chrome/test/data/webui/mocha_adapter.js (49)
[18374:18374:0923/204432.101101:ERROR:web_ui_test_handler.cc(72)] Test Errors: 1/1 tests had failed assertions.
[18374:18374:0923/204432.101355:ERROR:web_ui_browser_test.cc(546)] CONDITION FAILURE: encountered javascript console error(s):
[18374:18374:0923/204432.101376:ERROR:web_ui_browser_test.cc(548)] JS ERROR: '[18374:18374:0923/204432.097393:ERROR:CONSOLE(49)] "Mocha test failed: WelcomeFlow_color_contrast Landing Page
Error: the string "Found 1 accessibility violations." was thrown, throw an Error :)
", source: file:///b/s/w/ir/chrome/test/data/webui/mocha_adapter.js (49)
'
[18374:18374:0923/204432.101390:ERROR:web_ui_browser_test.cc(550)] JS call assumed failed, because JS console error(s) found.
gen/chrome/test/data/webui/welcome/a11y_tests-gen.cc:285: Failure
Value of: RunJavascriptTestF( true, "WelcomeA11y", "WelcomeFlow_color_contrast")
  Actual: false
Expected: true
Stack trace:
#0 0x55ebe3920b5f StackTraceGetter::CurrentStackTrace()
#1 0x55ebe392955c testing::internal::UnitTestImpl::CurrentOsStackTraceExceptTop()
#2 0x55ebe3928ea9 testing::internal::AssertHelper::operator=()
#3 0x55ebe36c24dd WelcomeA11y_WelcomeFlow_color_contrast_Test::RunTestOnMainThread()
#4 0x55ebe60b131e content::BrowserTestBase::ProxyRunTestOnMainThreadLoop()
#5 0x55ebe5cae39c ChromeBrowserMainParts::PreMainMessageLoopRunImpl()
#6 0x55ebe5cad1ad ChromeBrowserMainParts::PreMainMessageLoopRun()
#7 0x55ebe438318f content::BrowserMainLoop::PreMainMessageLoopRun()
#8 0x55ebe4779607 content::StartupTaskRunner::RunAllTasksNow()
#9 0x55ebe4381e42 content::BrowserMainLoop::CreateStartupTasks()
#10 0x55ebe4384bf2 content::BrowserMainRunnerImpl::Initialize()
#11 0x55ebe438041f content::BrowserMain()
#12 0x55ebe5873245 content::ContentMainRunnerImpl::RunServiceManager()
#13 0x55ebe5872d76 content::ContentMainRunnerImpl::Run()
#14 0x55ebe7a2e8dd service_manager::Main()
#15 0x55ebe4c9c511 content::ContentMain()
#16 0x55ebe60b0dc6 content::BrowserTestBase::SetUp()

Original change's description:
> Reland Update axe-core to v3.3.2
> 
> This change updates the version of axe-core to the latest released
> version. As part of picking up the latest version, the following
> additional changes were made:
> 
> 1) axe-core removed the 'href-no-hash' rule, so that been removed
>    from the test list.
> 
> 2) Several 'link-in-text-block' tests started failing with
>    axe-core v3.0.2 (and later). These tests do pass in v3.0.1, but
>    are disabled as part of this change.
>      - CrManagementA11yTest.SimpleTest_link_in_text_block
>      - CrManagementA11yTestWithExtension.
>                                 ExtensionSection_link_in_text_block
>      - CrostiniAccessibilityTest.CROSTINI_link_in_text_block
>      - CrExtensionsA11yTest.NoExtensions_link_in_text_block
>      - MultideviceA11yTest.MULTIDEVICE_link_in_text_block
>      - MultideviceFeaturesA11yTest.
>               MULTIDEVICE_FEATURES_ACCESSIBILITY_link_in_text_block
> 
> 3) One 'heading-order' test started failing in v3.0.0 (and later).
>    This tests does pass in V2.4.2, but is disabled as part of this
>    change.
>      - CrExtensionsA11yTestWithMultipleExensions.
>                                        WithExtensions_heading_order
> 
> 4) Several DevTools a11y tests were failing. This change either
>    updates the baseline or excludes the rule depending upon the
>    test/rule itself.
>      - http/tests/devtools/a11y-axe-core/basic-a11y-test.js
>      - http/tests/devtools/a11y-axe-core/console-a11y-test.js
>      - http/tests/devtools/a11y-axe-core/memory/heap-profiler-a11y-test.js
>      - http/tests/devtools/a11y-axe-core/sources/dom-breakpoints-pane-a11y-test.js
> 
> I spent some time investigating the test failures, and it looks
> like axe-core is highlighting legitimate product issues.
> 
> Change-Id: I0ef08cdace91250936f83705fb3cd0fbb35bed4b
> Bug: 984817
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1809407
> Commit-Queue: Mike Jackson <mjackson@microsoft.com>
> Reviewed-by: Yang Guo <yangguo@chromium.org>
> Reviewed-by: Hector Carmona <hcarmona@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#699166}

TBR=aboxhall@chromium.org,hcarmona@chromium.org,yangguo@chromium.org,mjackson@microsoft.com,tvanderlippe@chromium.org

Change-Id: I6e74d1ddeec80407fc057dd07c95c492d7e6679f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 984817
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1819284
Reviewed-by: Alan Cutter <alancutter@chromium.org>
Commit-Queue: Alan Cutter <alancutter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#699191}
fujunwei referenced this pull request in otcshare/chromium-src Sep 24, 2019
Fix bug which caused compile error in debug build
pdigennaro pushed a commit to washezium/washezium that referenced this pull request Nov 4, 2019
- Add a JNI method to callback when both DeviceInfoTracker and
  LocalDeviceInfoProvider are ready
- Also removed redundant setVibration in SharingNotificationUtil

(cherry picked from commit 0b7170d)

Bug: 996318
Change-Id: Id4df6b407ac2fb1c1622071ffb7ee8bb3a747b41
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1787379
Commit-Queue: Alex Chau <alexchau@chromium.org>
Reviewed-by: Marc Treib <treib@chromium.org>
Reviewed-by: Richard Knoll <knollr@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#694208}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1791155
Reviewed-by: Alex Chau <alexchau@chromium.org>
Cr-Commit-Position: refs/branch-heads/3904@{chromium#14}
Cr-Branched-From: 675968a-refs/heads/master@{#693954}
stoneskill pushed a commit to stoneskill/chromium that referenced this pull request Nov 15, 2019
TBR=dimu@chromium.org

Change-Id: I48fa96ce32e0336ebbe376f20ffbc9fe2fb9dbe7
Reviewed-on: https://chromium-review.googlesource.com/878060
Reviewed-by: chrome-release-bot@chromium.org <chrome-release-bot@chromium.org>
Cr-Commit-Position: refs/branch-heads/3325@{chromium#14}
Cr-Branched-From: bc084a8-refs/heads/master@{#530369}
aarongable pushed a commit that referenced this pull request Dec 3, 2019
https://codereview.chromium.org/2857643002 forced all sanitizers
builds to print address offsets only. This output is meant to run
through tools/valgrind/asan/asan_symbolize.py

yet test_env has different configuration to run through the asan_symbolize.py.

The asan and tsan builds for this cl give meaningful output.

Before,
Stack trace:
#0 0x55d1d54e8bc3 (/b/s/w/ir/out/Release/content_browsertests+0x1cf42bc2)
#1 0x55d1ccb003ab (/b/s/w/ir/out/Release/content_browsertests+0x1455a3aa)
#2 0x55d1ccb2b740 (/b/s/w/ir/out/Release/content_browsertests+0x1458573f)
#3 0x55d1ccb29747 (/b/s/w/ir/out/Release/content_browsertests+0x14583746)
#4 0x55d1c82f2530 (/b/s/w/ir/out/Release/content_browsertests+0xfd4c52f)
#5 0x55d1d40a8d42 (/b/s/w/ir/out/Release/content_browsertests+0x1bb02d41)
#6 0x55d1d4333e88 (/b/s/w/ir/out/Release/content_browsertests+0x1bd8de87)
#7 0x55d1d16f3fc2 (/b/s/w/ir/out/Release/content_browsertests+0x1914dfc1)
#8 0x55d1d2e62e79 (/b/s/w/ir/out/Release/content_browsertests+0x1a8bce78)
#9 0x55d1d16f0f65 (/b/s/w/ir/out/Release/content_browsertests+0x1914af64)
#10 0x55d1d16fb299 (/b/s/w/ir/out/Release/content_browsertests+0x19155298)
#11 0x55d1d16eb211 (/b/s/w/ir/out/Release/content_browsertests+0x19145210)
#12 0x55d1d1085a78 (/b/s/w/ir/out/Release/content_browsertests+0x18adfa77)
#13 0x55d1d1084d99 (/b/s/w/ir/out/Release/content_browsertests+0x18aded98)
#14 0x55d1dba2402c (/b/s/w/ir/out/Release/content_browsertests+0x2347e02b)

After,
Stack trace:
    #0 0x562f0d54eee3 in StackTrace ./../../base/debug/stack_trace.cc:206:12
    #1 0x562f0d54eee3 in base::debug::StackTrace::StackTrace() ./../../base/debug/stack_trace.cc:203:28
    #2 0x562f051de24b in StackTraceGetter::CurrentStackTrace(int, int) ./../../third_party/googletest/custom/gtest/internal/custom/stack_trace_getter.cc:22:27
    #3 0x562f051fdb40 in testing::internal::UnitTestImpl::CurrentOsStackTraceExceptTop(int) ./../../third_party/googletest/src/googletest/src/gtest.cc:820:35
    #4 0x562f051fc527 in testing::internal::AssertHelper::operator=(testing::Message const&) const ./../../third_party/googletest/src/googletest/src/gtest.cc:401:25
    #5 0x562f0127b36b in content::PointerLockBrowserTest_PointerLockWheelEventRouting_Test::RunTestOnMainThread() ./../../content/browser/pointer_lock_browsertest.cc:518:5
    #6 0x562f0c30fba6 in content::BrowserTestBase::ProxyRunTestOnMainThreadLoop() ./../../content/public/test/browser_test_base.cc:656:5
    #7 0x562f0c54407b in Run ./../../base/callback.h:132:12
    #8 0x562f0c54407b in content::ShellBrowserMainParts::PreMainMessageLoopRun() ./../../content/shell/browser/shell_browser_main_parts.cc:168:26
    #9 0x562f09b284d2 in content::BrowserMainLoop::PreMainMessageLoopRun() ./../../content/browser/browser_main_loop.cc:1031:13
    #10 0x562f0b1a6839 in Run ./../../base/callback.h:98:12
    #11 0x562f0b1a6839 in content::StartupTaskRunner::RunAllTasksNow() ./../../content/browser/startup_task_runner.cc:41:29
    #12 0x562f09b25475 in content::BrowserMainLoop::CreateStartupTasks() ./../../content/browser/browser_main_loop.cc:940:25
    #13 0x562f09b2f519 in content::BrowserMainRunnerImpl::Initialize(content::MainFunctionParams const&) ./../../content/browser/browser_main_runner_impl.cc:128:15
    #14 0x562f09b1f61f in content::BrowserMain(content::MainFunctionParams const&) ./../../content/browser/browser_main.cc:43:32
    #15 0x562f0959b1e8 in RunBrowserProcessMain ./../../content/app/content_main_runner_impl.cc:527:10
    #16 0x562f0959b1e8 in content::ContentMainRunnerImpl::RunServiceManager(content::MainFunctionParams&, bool) ./../../content/app/content_main_runner_impl.cc:960:10
    #17 0x562f0959a50d in content::ContentMainRunnerImpl::Run(bool) ./../../content/app/content_main_runner_impl.cc:868:12
    #18 0x562f1327ce25 in service_manager::Main(service_manager::MainParams const&) ./../../services/service_manager/embedder/main.cc:423:29


Bug: 877205
Change-Id: Ib83c3e72919f0d1664cd2e2d338cbd21982d1c0e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1894762
Reviewed-by: Alexander Potapenko <glider@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Reviewed-by: John Budorick <jbudorick@chromium.org>
Commit-Queue: Ilia Samsonov <isamsonov@google.com>
Cr-Commit-Position: refs/heads/master@{#720662}
pull bot referenced this pull request in FreddyZeng/chromium Jan 7, 2020
The included testcases generates a tree similar to the following:

  Heading(#9) h2
    LayoutTable(#11) ::before
      StaticText(#18)
    StaticText(#12)
      InlineTextBox(#71)
    LayoutTable(#14) ::after
      StaticText(#23)
  Paragraph(#10) p
    StaticText(#24)
      InlineTextBox(#72)

This tree would give us asymmetric behavior when moving by format
boundaries, which caused problems for narrator navigating through
display:table GC in move-by-headings mode.

Starting from a text position at node 71 offset 0,
CreateNextFormatEndPosition() will convert to a tree position and then
move to end of anchor, which is node 71 child 0. We don't find another
leaf tree position before crossing a format boundary; the step that
terminates the search is a comparison between node 14 child 0 and
node 23 child -1. Node 23 is a leaf and the tags differ, so the abort
predicate returns true. This gives us node 71 child 0, in other words
the "end" of node 71, as our next format boundary.

When moving in the reverse direction the picture changes.
Starting from a text position at node 23 offset 2,
CreatePreviousFormatStartPosition() will convert to a tree position and
move to start of anchor, which is node 23 child -1. The first step in
our search for format boundary involves a move from there to node 14
child 0. This is the inverse of the comparison that stopped our search
in the forward direction, but it does not abort in this case: the tags
differ, but move_from is not a leaf in this case. Our eventual stopping
point is node 71 index -1.

The fix is to make format boundary detection symmetric. The tag check
is removed and replaced with a check for crossing into or out of roles
of interest.

The markup that prompted this fix also exposed an issue with the
handling of line breaks when moving by format units. That issue is
captured in a separate bug, and a substitute test to avoid the issue
is provided.

Bug: 928948
Change-Id: Id8f6870b55f934fc5fc1f21d6a54ebdf85bb9a20
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1974990
Commit-Queue: Kevin Babbitt <kbabbitt@microsoft.com>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Kurt Catti-Schmidt <kschmi@microsoft.com>
Cr-Commit-Position: refs/heads/master@{#729051}
fujunwei pushed a commit to fujunwei/chromium that referenced this pull request Jan 10, 2020
pdigennaro pushed a commit to washezium/washezium that referenced this pull request Feb 29, 2020
> Output surface could ignore display transform hint. In this case,
> SurfaceAggregator and Display should ignore the hint as well.
>
> Bug: 1031043
> Change-Id: If8a75d818c50a32be7272a735602642b3c452055
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1954212
> Reviewed-by: Khushal <khushalsagar@chromium.org>
> Commit-Queue: Xiyuan Xia <xiyuan@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#722293}

(cherry picked from commit 2f25174)

Bug: 1031043
Change-Id: Ifa737e6e6e24556da6b81e5e70b179be434ed8b5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1958687
Reviewed-by: Xiyuan Xia <xiyuan@chromium.org>
Reviewed-by: Khushal <khushalsagar@chromium.org>
Commit-Queue: Xiyuan Xia <xiyuan@chromium.org>
Cr-Commit-Position: refs/branch-heads/3987@{chromium#14}
Cr-Branched-From: c4e8da9-refs/heads/master@{#722274}
blueboxd referenced this pull request in blueboxd/chromium-legacy Mar 11, 2020
This reverts commit 64465df.

Reason for revert: Speculative revert to fix use-of-uninitialized member flake / crash; see https://logs.chromium.org/logs/chromium/buildbucket/cr-buildbucket.appspot.com/8886180914914709040/+/steps/browser_tests/0/logs/Deterministic_failure:_PublicSessionOobeTestImpl__x2f_PublicSessionOobeTest.NoTermsOfService__x2f_4__status_CRASH_/0

==18002==WARNING: MemorySanitizer: use-of-uninitialized-value
    #0 0x5640af44e1e6 in ui::AnimationMetricsRecorder::OnAnimationEnd(base::Optional<int>, float) ./../../ui/compositor/animation_metrics_recorder.cc:64:14
    #1 0x5640af4e4b37 in ui::LayerAnimationElement::ProgressToEnd(ui::LayerAnimationDelegate*) ./../../ui/compositor/layer_animation_element.cc:669:34
    #2 0x5640af4fbb95 in ui::LayerAnimationSequence::ProgressToEnd(ui::LayerAnimationDelegate*) ./../../ui/compositor/layer_animation_sequence.cc:147:35
    #3 0x5640af513c54 in ProgressAnimationToEnd ./../../ui/compositor/layer_animator.cc:476:13
    #4 0x5640af513c54 in ui::LayerAnimator::FinishAnimation(ui::LayerAnimationSequence*, bool) ./../../ui/compositor/layer_animator.cc:622:5
    #5 0x5640af519c6d in ui::LayerAnimator::StopAnimatingInternal(bool) ./../../ui/compositor/layer_animator.cc:533:5
    #6 0x5640af489c93 in StopAnimating ./../../ui/compositor/layer_animator.h:198:26
    #7 0x5640af489c93 in ui::Layer::CompleteAllAnimations() ./../../ui/compositor/layer.cc:1128:12
    #8 0x5640af3c6ff1 in aura::Window::~Window() ./../../ui/aura/window.cc:124:14
    #9 0x5640af3ca7ac in aura::Window::~Window() ./../../ui/aura/window.cc:119:19
    #10 0x5640a9a51655 in views::NativeWidgetAura::~NativeWidgetAura() ./../../ui/views/widget/native_widget_aura.cc:0:0
    #11 0x5640a9a51b9c in views::NativeWidgetAura::~NativeWidgetAura() ./../../ui/views/widget/native_widget_aura.cc:1054:39
    #12 0x5640a99ba714 in views::Widget::~Widget() ./../../ui/views/widget/widget.cc:185:5
    #13 0x5640b72c7e39 in ash::HotseatWidget::~HotseatWidget() ./../../ash/shelf/hotseat_widget.cc:354:1
    #14 0x5640b72c7f9c in ash::HotseatWidget::~HotseatWidget() ./../../ash/shelf/hotseat_widget.cc:350:33
    #15 0x5640b7319b53 in operator() ./../../buildtools/third_party/libc++/trunk/include/memory:2378:5
    #16 0x5640b7319b53 in reset ./../../buildtools/third_party/libc++/trunk/include/memory:2633:7
    #17 0x5640b7319b53 in ash::Shelf::ShutdownShelfWidget() ./../../ash/shelf/shelf.cc:377:19
    #18 0x5640b724c95f in ash::RootWindowController::CloseChildWindows() ./../../ash/root_window_controller.cc:659:11
    #19 0x5640b741f9c5 in ash::Shell::CloseAllRootWindowChildWindows() ./../../ash/shell.cc:1269:19
    #20 0x5640b741532a in ash::Shell::~Shell() ./../../ash/shell.cc:720:3
    #21 0x5640b741fd3c in ash::Shell::~Shell() ./../../ash/shell.cc:589:17
    #22 0x5640b9be4d75 in operator() ./../../buildtools/third_party/libc++/trunk/include/memory:2378:5
    #23 0x5640b9be4d75 in reset ./../../buildtools/third_party/libc++/trunk/include/memory:2633:7
    #24 0x5640b9be4d75 in ChromeBrowserMainExtraPartsAsh::PostMainMessageLoopRun() ./../../chrome/browser/ui/ash/chrome_browser_main_extra_parts_ash.cc:245:19
    #25 0x5640a5abe85d in ChromeBrowserMainParts::PostMainMessageLoopRun() ./../../chrome/browser/chrome_browser_main.cc:1721:29
    #26 0x564094a9d525 in chromeos::ChromeBrowserMainPartsChromeos::PostMainMessageLoopRun() ./../../chrome/browser/chromeos/chrome_browser_main_chromeos.cc:1136:32
    #27 0x56409b175e3f in content::BrowserMainLoop::ShutdownThreadsAndCleanUp() ./../../content/browser/browser_main_loop.cc:1095:13
    #28 0x56409b17ea9a in content::BrowserMainRunnerImpl::Shutdown() ./../../content/browser/browser_main_runner_impl.cc:178:17
    #29 0x56409b165bd4 in content::BrowserMain(content::MainFunctionParams const&) ./../../content/browser/browser_main.cc:49:16
    #30 0x5640a3b3284b in RunBrowserProcessMain ./../../content/app/content_main_runner_impl.cc:529:10
    #31 0x5640a3b3284b in content::ContentMainRunnerImpl::RunServiceManager(content::MainFunctionParams&, bool) ./../../content/app/content_main_runner_impl.cc:978:10
    #32 0x5640a3b311b2 in content::ContentMainRunnerImpl::Run(bool) ./../../content/app/content_main_runner_impl.cc:878:12
    #33 0x5640b1028f28 in service_manager::Main(service_manager::MainParams const&) ./../../services/service_manager/embedder/main.cc:455:29
    #34 0x56409f705fd0 in content::ContentMain(content::ContentMainParams const&) ./../../content/app/content_main.cc:19:10
    #35 0x5640a762696a in content::BrowserTestBase::SetUp() ./../../content/public/test/browser_test_base.cc:513:3
    chromium#36 0x5640a53fb49d in InProcessBrowserTest::SetUp() ./../../chrome/test/base/in_process_browser_test.cc:299:20
    #37 0x5640960c6b50 in HandleExceptionsInMethodIfSupported<testing::Test, void> ./../../third_party/googletest/src/googletest/src/gtest.cc:0:0
    #38 0x5640960c6b50 in testing::Test::Run() ./../../third_party/googletest/src/googletest/src/gtest.cc:2663:3
    chromium#39 0x5640960cb24d in testing::TestInfo::Run() ./../../third_party/googletest/src/googletest/src/gtest.cc:2845:11
    #40 0x5640960cd5f9 in testing::TestSuite::Run() ./../../third_party/googletest/src/googletest/src/gtest.cc:2977:28
    #41 0x564096106f6e in testing::internal::UnitTestImpl::RunAllTests() ./../../third_party/googletest/src/googletest/src/gtest.cc:5518:44
    chromium#42 0x5640961053fd in HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> ./../../third_party/googletest/src/googletest/src/gtest-internal-inl.h:0:10
    #43 0x5640961053fd in testing::UnitTest::Run() ./../../third_party/googletest/src/googletest/src/gtest.cc:5105:10
    #44 0x5640a5902835 in RUN_ALL_TESTS ./../../third_party/googletest/src/googletest/include/gtest/gtest.h:2472:46
    #45 0x5640a5902835 in base::TestSuite::Run() ./../../base/test/test_suite.cc:458:16
    #46 0x5640a5393dd1 in BrowserTestSuiteRunnerChromeOS::RunTestSuite(int, char**) ./../../chrome/test/base/browser_tests_main_chromeos.cc:37:23
    #47 0x5640a773a27e in content::LaunchTests(content::TestLauncherDelegate*, unsigned long, int, char**) ./../../content/public/test/test_launcher.cc:375:31
    #48 0x5640a5394f45 in LaunchChromeTests(unsigned long, content::TestLauncherDelegate*, int, char**) ./../../chrome/test/base/chrome_test_launcher.cc:246:10
    #49 0x5640a5393bb8 in main ./../../chrome/test/base/browser_tests_main_chromeos.cc:52:10
    #50 0x7f194b36282f in __libc_start_main /build/glibc-LK5gWL/glibc-2.23/csu/../csu/libc-start.c:291:0
    #51 0x56408b4293c9 in _start ??:0:0

  Uninitialized value was created by a heap deallocation
    #0 0x56408b497790 in operator delete(void*) /b/s/w/ir/cache/builder/src/third_party/llvm/compiler-rt/lib/msan/msan_new_delete.cpp:74:44
    #1 0x5640b72c7d74 in operator() ./../../buildtools/third_party/libc++/trunk/include/memory:2378:5
    #2 0x5640b72c7d74 in reset ./../../buildtools/third_party/libc++/trunk/include/memory:2633:7
    #3 0x5640b72c7d74 in ~unique_ptr ./../../buildtools/third_party/libc++/trunk/include/memory:2587:19
    #4 0x5640b72c7d74 in ash::HotseatWidget::~HotseatWidget() ./../../ash/shelf/hotseat_widget.cc:354:1
    #5 0x5640b72c7f9c in ash::HotseatWidget::~HotseatWidget() ./../../ash/shelf/hotseat_widget.cc:350:33
    #6 0x5640b7319b53 in operator() ./../../buildtools/third_party/libc++/trunk/include/memory:2378:5
    #7 0x5640b7319b53 in reset ./../../buildtools/third_party/libc++/trunk/include/memory:2633:7
    #8 0x5640b7319b53 in ash::Shelf::ShutdownShelfWidget() ./../../ash/shelf/shelf.cc:377:19
    #9 0x5640b724c95f in ash::RootWindowController::CloseChildWindows() ./../../ash/root_window_controller.cc:659:11
    #10 0x5640b741f9c5 in ash::Shell::CloseAllRootWindowChildWindows() ./../../ash/shell.cc:1269:19
    #11 0x5640b741532a in ash::Shell::~Shell() ./../../ash/shell.cc:720:3
    #12 0x5640b741fd3c in ash::Shell::~Shell() ./../../ash/shell.cc:589:17
    #13 0x5640b9be4d75 in operator() ./../../buildtools/third_party/libc++/trunk/include/memory:2378:5
    #14 0x5640b9be4d75 in reset ./../../buildtools/third_party/libc++/trunk/include/memory:2633:7
    #15 0x5640b9be4d75 in ChromeBrowserMainExtraPartsAsh::PostMainMessageLoopRun() ./../../chrome/browser/ui/ash/chrome_browser_main_extra_parts_ash.cc:245:19
    #16 0x5640a5abe85d in ChromeBrowserMainParts::PostMainMessageLoopRun() ./../../chrome/browser/chrome_browser_main.cc:1721:29
    #17 0x564094a9d525 in chromeos::ChromeBrowserMainPartsChromeos::PostMainMessageLoopRun() ./../../chrome/browser/chromeos/chrome_browser_main_chromeos.cc:1136:32
    #18 0x56409b175e3f in content::BrowserMainLoop::ShutdownThreadsAndCleanUp() ./../../content/browser/browser_main_loop.cc:1095:13
    #19 0x56409b17ea9a in content::BrowserMainRunnerImpl::Shutdown() ./../../content/browser/browser_main_runner_impl.cc:178:17
    #20 0x56409b165bd4 in content::BrowserMain(content::MainFunctionParams const&) ./../../content/browser/browser_main.cc:49:16
    #21 0x5640a3b3284b in RunBrowserProcessMain ./../../content/app/content_main_runner_impl.cc:529:10
    #22 0x5640a3b3284b in content::ContentMainRunnerImpl::RunServiceManager(content::MainFunctionParams&, bool) ./../../content/app/content_main_runner_impl.cc:978:10
    #23 0x5640a3b311b2 in content::ContentMainRunnerImpl::Run(bool) ./../../content/app/content_main_runner_impl.cc:878:12
    #24 0x5640b1028f28 in service_manager::Main(service_manager::MainParams const&) ./../../services/service_manager/embedder/main.cc:455:29
    #25 0x56409f705fd0 in content::ContentMain(content::ContentMainParams const&) ./../../content/app/content_main.cc:19:10
    #26 0x5640a762696a in content::BrowserTestBase::SetUp() ./../../content/public/test/browser_test_base.cc:513:3
    #27 0x5640a53fb49d in InProcessBrowserTest::SetUp() ./../../chrome/test/base/in_process_browser_test.cc:299:20

Original change's description:
> Cros: Report metrics for the animation of traslucent background
> 
> This animation happens during transition between hotseat states.
> 
> Bug: 1058609
> Change-Id: Iff1f81625e6de2bf6dc6dcfee09225c4d16cc53e
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2088641
> Reviewed-by: Robert Kaplow <rkaplow@chromium.org>
> Reviewed-by: Manu Cornet <manucornet@chromium.org>
> Reviewed-by: Alex Newcomer <newcomer@chromium.org>
> Commit-Queue: Ana Salazar <anasalazar@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#748806}

TBR=rkaplow@chromium.org,newcomer@chromium.org,manucornet@chromium.org,anasalazar@chromium.org

Change-Id: I28dfaa49cae6e27801975a2863c013b9f9a5edca
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 1058609
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2097507
Reviewed-by: Joshua Pawlicki <waffles@chromium.org>
Commit-Queue: Joshua Pawlicki <waffles@chromium.org>
Cr-Commit-Position: refs/heads/master@{#749146}
blueboxd referenced this pull request in blueboxd/chromium-legacy Mar 11, 2020
This reverts commit 9fcd754.

Reason for revert: breaks compile (bad merge)

Original change's description:
> Revert "Cros: Report metrics for the animation of traslucent background"
> 
> This reverts commit 64465df.
> 
> Reason for revert: Speculative revert to fix use-of-uninitialized member flake / crash; see https://logs.chromium.org/logs/chromium/buildbucket/cr-buildbucket.appspot.com/8886180914914709040/+/steps/browser_tests/0/logs/Deterministic_failure:_PublicSessionOobeTestImpl__x2f_PublicSessionOobeTest.NoTermsOfService__x2f_4__status_CRASH_/0
> 
> ==18002==WARNING: MemorySanitizer: use-of-uninitialized-value
>     #0 0x5640af44e1e6 in ui::AnimationMetricsRecorder::OnAnimationEnd(base::Optional<int>, float) ./../../ui/compositor/animation_metrics_recorder.cc:64:14
>     #1 0x5640af4e4b37 in ui::LayerAnimationElement::ProgressToEnd(ui::LayerAnimationDelegate*) ./../../ui/compositor/layer_animation_element.cc:669:34
>     #2 0x5640af4fbb95 in ui::LayerAnimationSequence::ProgressToEnd(ui::LayerAnimationDelegate*) ./../../ui/compositor/layer_animation_sequence.cc:147:35
>     #3 0x5640af513c54 in ProgressAnimationToEnd ./../../ui/compositor/layer_animator.cc:476:13
>     #4 0x5640af513c54 in ui::LayerAnimator::FinishAnimation(ui::LayerAnimationSequence*, bool) ./../../ui/compositor/layer_animator.cc:622:5
>     #5 0x5640af519c6d in ui::LayerAnimator::StopAnimatingInternal(bool) ./../../ui/compositor/layer_animator.cc:533:5
>     #6 0x5640af489c93 in StopAnimating ./../../ui/compositor/layer_animator.h:198:26
>     #7 0x5640af489c93 in ui::Layer::CompleteAllAnimations() ./../../ui/compositor/layer.cc:1128:12
>     #8 0x5640af3c6ff1 in aura::Window::~Window() ./../../ui/aura/window.cc:124:14
>     #9 0x5640af3ca7ac in aura::Window::~Window() ./../../ui/aura/window.cc:119:19
>     #10 0x5640a9a51655 in views::NativeWidgetAura::~NativeWidgetAura() ./../../ui/views/widget/native_widget_aura.cc:0:0
>     #11 0x5640a9a51b9c in views::NativeWidgetAura::~NativeWidgetAura() ./../../ui/views/widget/native_widget_aura.cc:1054:39
>     #12 0x5640a99ba714 in views::Widget::~Widget() ./../../ui/views/widget/widget.cc:185:5
>     #13 0x5640b72c7e39 in ash::HotseatWidget::~HotseatWidget() ./../../ash/shelf/hotseat_widget.cc:354:1
>     #14 0x5640b72c7f9c in ash::HotseatWidget::~HotseatWidget() ./../../ash/shelf/hotseat_widget.cc:350:33
>     #15 0x5640b7319b53 in operator() ./../../buildtools/third_party/libc++/trunk/include/memory:2378:5
>     #16 0x5640b7319b53 in reset ./../../buildtools/third_party/libc++/trunk/include/memory:2633:7
>     #17 0x5640b7319b53 in ash::Shelf::ShutdownShelfWidget() ./../../ash/shelf/shelf.cc:377:19
>     #18 0x5640b724c95f in ash::RootWindowController::CloseChildWindows() ./../../ash/root_window_controller.cc:659:11
>     #19 0x5640b741f9c5 in ash::Shell::CloseAllRootWindowChildWindows() ./../../ash/shell.cc:1269:19
>     #20 0x5640b741532a in ash::Shell::~Shell() ./../../ash/shell.cc:720:3
>     #21 0x5640b741fd3c in ash::Shell::~Shell() ./../../ash/shell.cc:589:17
>     #22 0x5640b9be4d75 in operator() ./../../buildtools/third_party/libc++/trunk/include/memory:2378:5
>     #23 0x5640b9be4d75 in reset ./../../buildtools/third_party/libc++/trunk/include/memory:2633:7
>     #24 0x5640b9be4d75 in ChromeBrowserMainExtraPartsAsh::PostMainMessageLoopRun() ./../../chrome/browser/ui/ash/chrome_browser_main_extra_parts_ash.cc:245:19
>     #25 0x5640a5abe85d in ChromeBrowserMainParts::PostMainMessageLoopRun() ./../../chrome/browser/chrome_browser_main.cc:1721:29
>     #26 0x564094a9d525 in chromeos::ChromeBrowserMainPartsChromeos::PostMainMessageLoopRun() ./../../chrome/browser/chromeos/chrome_browser_main_chromeos.cc:1136:32
>     #27 0x56409b175e3f in content::BrowserMainLoop::ShutdownThreadsAndCleanUp() ./../../content/browser/browser_main_loop.cc:1095:13
>     #28 0x56409b17ea9a in content::BrowserMainRunnerImpl::Shutdown() ./../../content/browser/browser_main_runner_impl.cc:178:17
>     #29 0x56409b165bd4 in content::BrowserMain(content::MainFunctionParams const&) ./../../content/browser/browser_main.cc:49:16
>     #30 0x5640a3b3284b in RunBrowserProcessMain ./../../content/app/content_main_runner_impl.cc:529:10
>     #31 0x5640a3b3284b in content::ContentMainRunnerImpl::RunServiceManager(content::MainFunctionParams&, bool) ./../../content/app/content_main_runner_impl.cc:978:10
>     #32 0x5640a3b311b2 in content::ContentMainRunnerImpl::Run(bool) ./../../content/app/content_main_runner_impl.cc:878:12
>     #33 0x5640b1028f28 in service_manager::Main(service_manager::MainParams const&) ./../../services/service_manager/embedder/main.cc:455:29
>     #34 0x56409f705fd0 in content::ContentMain(content::ContentMainParams const&) ./../../content/app/content_main.cc:19:10
>     #35 0x5640a762696a in content::BrowserTestBase::SetUp() ./../../content/public/test/browser_test_base.cc:513:3
>     chromium#36 0x5640a53fb49d in InProcessBrowserTest::SetUp() ./../../chrome/test/base/in_process_browser_test.cc:299:20
>     #37 0x5640960c6b50 in HandleExceptionsInMethodIfSupported<testing::Test, void> ./../../third_party/googletest/src/googletest/src/gtest.cc:0:0
>     #38 0x5640960c6b50 in testing::Test::Run() ./../../third_party/googletest/src/googletest/src/gtest.cc:2663:3
>     chromium#39 0x5640960cb24d in testing::TestInfo::Run() ./../../third_party/googletest/src/googletest/src/gtest.cc:2845:11
>     #40 0x5640960cd5f9 in testing::TestSuite::Run() ./../../third_party/googletest/src/googletest/src/gtest.cc:2977:28
>     #41 0x564096106f6e in testing::internal::UnitTestImpl::RunAllTests() ./../../third_party/googletest/src/googletest/src/gtest.cc:5518:44
>     chromium#42 0x5640961053fd in HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> ./../../third_party/googletest/src/googletest/src/gtest-internal-inl.h:0:10
>     #43 0x5640961053fd in testing::UnitTest::Run() ./../../third_party/googletest/src/googletest/src/gtest.cc:5105:10
>     #44 0x5640a5902835 in RUN_ALL_TESTS ./../../third_party/googletest/src/googletest/include/gtest/gtest.h:2472:46
>     #45 0x5640a5902835 in base::TestSuite::Run() ./../../base/test/test_suite.cc:458:16
>     #46 0x5640a5393dd1 in BrowserTestSuiteRunnerChromeOS::RunTestSuite(int, char**) ./../../chrome/test/base/browser_tests_main_chromeos.cc:37:23
>     #47 0x5640a773a27e in content::LaunchTests(content::TestLauncherDelegate*, unsigned long, int, char**) ./../../content/public/test/test_launcher.cc:375:31
>     #48 0x5640a5394f45 in LaunchChromeTests(unsigned long, content::TestLauncherDelegate*, int, char**) ./../../chrome/test/base/chrome_test_launcher.cc:246:10
>     #49 0x5640a5393bb8 in main ./../../chrome/test/base/browser_tests_main_chromeos.cc:52:10
>     #50 0x7f194b36282f in __libc_start_main /build/glibc-LK5gWL/glibc-2.23/csu/../csu/libc-start.c:291:0
>     #51 0x56408b4293c9 in _start ??:0:0
> 
>   Uninitialized value was created by a heap deallocation
>     #0 0x56408b497790 in operator delete(void*) /b/s/w/ir/cache/builder/src/third_party/llvm/compiler-rt/lib/msan/msan_new_delete.cpp:74:44
>     #1 0x5640b72c7d74 in operator() ./../../buildtools/third_party/libc++/trunk/include/memory:2378:5
>     #2 0x5640b72c7d74 in reset ./../../buildtools/third_party/libc++/trunk/include/memory:2633:7
>     #3 0x5640b72c7d74 in ~unique_ptr ./../../buildtools/third_party/libc++/trunk/include/memory:2587:19
>     #4 0x5640b72c7d74 in ash::HotseatWidget::~HotseatWidget() ./../../ash/shelf/hotseat_widget.cc:354:1
>     #5 0x5640b72c7f9c in ash::HotseatWidget::~HotseatWidget() ./../../ash/shelf/hotseat_widget.cc:350:33
>     #6 0x5640b7319b53 in operator() ./../../buildtools/third_party/libc++/trunk/include/memory:2378:5
>     #7 0x5640b7319b53 in reset ./../../buildtools/third_party/libc++/trunk/include/memory:2633:7
>     #8 0x5640b7319b53 in ash::Shelf::ShutdownShelfWidget() ./../../ash/shelf/shelf.cc:377:19
>     #9 0x5640b724c95f in ash::RootWindowController::CloseChildWindows() ./../../ash/root_window_controller.cc:659:11
>     #10 0x5640b741f9c5 in ash::Shell::CloseAllRootWindowChildWindows() ./../../ash/shell.cc:1269:19
>     #11 0x5640b741532a in ash::Shell::~Shell() ./../../ash/shell.cc:720:3
>     #12 0x5640b741fd3c in ash::Shell::~Shell() ./../../ash/shell.cc:589:17
>     #13 0x5640b9be4d75 in operator() ./../../buildtools/third_party/libc++/trunk/include/memory:2378:5
>     #14 0x5640b9be4d75 in reset ./../../buildtools/third_party/libc++/trunk/include/memory:2633:7
>     #15 0x5640b9be4d75 in ChromeBrowserMainExtraPartsAsh::PostMainMessageLoopRun() ./../../chrome/browser/ui/ash/chrome_browser_main_extra_parts_ash.cc:245:19
>     #16 0x5640a5abe85d in ChromeBrowserMainParts::PostMainMessageLoopRun() ./../../chrome/browser/chrome_browser_main.cc:1721:29
>     #17 0x564094a9d525 in chromeos::ChromeBrowserMainPartsChromeos::PostMainMessageLoopRun() ./../../chrome/browser/chromeos/chrome_browser_main_chromeos.cc:1136:32
>     #18 0x56409b175e3f in content::BrowserMainLoop::ShutdownThreadsAndCleanUp() ./../../content/browser/browser_main_loop.cc:1095:13
>     #19 0x56409b17ea9a in content::BrowserMainRunnerImpl::Shutdown() ./../../content/browser/browser_main_runner_impl.cc:178:17
>     #20 0x56409b165bd4 in content::BrowserMain(content::MainFunctionParams const&) ./../../content/browser/browser_main.cc:49:16
>     #21 0x5640a3b3284b in RunBrowserProcessMain ./../../content/app/content_main_runner_impl.cc:529:10
>     #22 0x5640a3b3284b in content::ContentMainRunnerImpl::RunServiceManager(content::MainFunctionParams&, bool) ./../../content/app/content_main_runner_impl.cc:978:10
>     #23 0x5640a3b311b2 in content::ContentMainRunnerImpl::Run(bool) ./../../content/app/content_main_runner_impl.cc:878:12
>     #24 0x5640b1028f28 in service_manager::Main(service_manager::MainParams const&) ./../../services/service_manager/embedder/main.cc:455:29
>     #25 0x56409f705fd0 in content::ContentMain(content::ContentMainParams const&) ./../../content/app/content_main.cc:19:10
>     #26 0x5640a762696a in content::BrowserTestBase::SetUp() ./../../content/public/test/browser_test_base.cc:513:3
>     #27 0x5640a53fb49d in InProcessBrowserTest::SetUp() ./../../chrome/test/base/in_process_browser_test.cc:299:20
> 
> Original change's description:
> > Cros: Report metrics for the animation of traslucent background
> > 
> > This animation happens during transition between hotseat states.
> > 
> > Bug: 1058609
> > Change-Id: Iff1f81625e6de2bf6dc6dcfee09225c4d16cc53e
> > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2088641
> > Reviewed-by: Robert Kaplow <rkaplow@chromium.org>
> > Reviewed-by: Manu Cornet <manucornet@chromium.org>
> > Reviewed-by: Alex Newcomer <newcomer@chromium.org>
> > Commit-Queue: Ana Salazar <anasalazar@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#748806}
> 
> TBR=rkaplow@chromium.org,newcomer@chromium.org,manucornet@chromium.org,anasalazar@chromium.org
> 
> Change-Id: I28dfaa49cae6e27801975a2863c013b9f9a5edca
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: 1058609
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2097507
> Reviewed-by: Joshua Pawlicki <waffles@chromium.org>
> Commit-Queue: Joshua Pawlicki <waffles@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#749146}

TBR=rkaplow@chromium.org,waffles@chromium.org,newcomer@chromium.org,manucornet@chromium.org,anasalazar@chromium.org

Change-Id: I9eb448a6d4ea88624c9535a30cdfa519fc431d50
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 1058609
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2097508
Reviewed-by: Joshua Pawlicki <waffles@chromium.org>
Commit-Queue: Joshua Pawlicki <waffles@chromium.org>
Cr-Commit-Position: refs/heads/master@{#749151}
aarongable pushed a commit that referenced this pull request Sep 5, 2023
@AliMariam reported the dangling pointer detector found a new dangling
pointer when running tests on linux Workstation.

The error is:
```
  The memory was freed at:
  #3  allocator_shim::internal::PartitionFree()
  #4  bluez::BluezDBusThreadManager::~BluezDBusThreadManager()
  #5  bluez::BluezDBusThreadManager::Shutdown()
  #6  ChromeBrowserMainPartsLinux::PostDestroyThreads()
  #7  content::BrowserMainLoop::ShutdownThreadsAndCleanUp()
  #8  content::BrowserMainRunnerImpl::Shutdown()
  #9  content::BrowserMain()
  #10 content::RunBrowserProcessMain()
  #11 content::ContentMainRunnerImpl::RunBrowser()
  #12 content::ContentMainRunnerImpl::Run()
  #13 content::RunContentProcess()
  #14 content::ContentMain()
  #15 ChromeMain

  The dangling raw_ptr was released at:
  #3  base::internal::RawPtrBackupRefImpl<>::ReleaseInternal()
  #4  dbus::ObjectManager::~ObjectManager()
  #5  std::__Cr::__tuple_impl<>::~__tuple_impl()
  #6  base::internal::BindState<>::Destroy()
  #7  base::[...]::LazilyDeallocatedDeque<>::Ring::~Ring()
  #8  base::[...]::TaskQueueImpl::UnregisterTaskQueue()
  #9  base::[...]::SequenceManagerImpl::UnregisterTaskQueueImpl()
  #10 base::sequence_manager::TaskQueue::ShutdownTaskQueue()
  #11 content::BrowserTaskQueues::~BrowserTaskQueues()
  #12 content::BrowserUIThreadScheduler::~BrowserUIThreadScheduler()
  #13 content::BrowserTaskExecutor::[...]::~UIThreadExecutor()
  #14 content::BrowserTaskExecutor::[...]::~UIThreadExecutor()
  #15 content::BrowserTaskExecutor::Shutdown()
  #16 content::ContentMainRunnerImpl::Shutdown()
  #17 content::RunContentProcess()
  #18 content::ContentMain()
  #19 ChromeMain
```

Diagnostic:
- `bluez::BluezDBusThreadManager` owns a `dbus::Bus` as `system_bus`.
- `dbus::Bus` owns:
  - The set of `dbus::ObjectManager` as `object_manager_table_`.
  - The DBus task runner as `dbus_task_runner_`.
- The `dbus::ObjectManager` references `dbus::Bus` via `bus_`.

So far so good, the ownership is clear. The problem happens when calling
`dbus::Bus::RemoveObjectManager`. Indeed this moves the ObjectManager
out of `dbus::Bus` toward a callback to a new thread. This still works
transitively, because the dbus::Bus owns the thread. The problem happens
after a second transfer back to the original thread.

Indeed, there is a race condition possible:

Behavior without problems: -----------------------------------

┌─────────────┐                    ┌───────────┐
│Origin thread│                    │DBus thread│
└──────┬──────┘                    └─────┬─────┘
RemoveObjectManager()                    │
       │────────────────────────────────>│
       │                      RemoveObjectManagerInternal()
       │<────────────────────────────────│
RemoveObjectManagerInternalHelper()      │
~ObjectManager()                         │
       │                           ┌─────┴─────┐
Shutdown DBus Thread ─────────────>│DBus thread│
Shutdown DBus Thread <─────────────│DBus thread│
       │                           └───────────┘
      ~Bus
┌──────┴──────┐
│Origin thread│
└─────────────┘

Behavior with problems: ----------------------------------------

┌─────────────┐                    ┌───────────┐
│Origin thread│                    │DBus thread│
└──────┬──────┘                    └─────┬─────┘
RemoveObjectManager()                    │
       │────────────────────────────────>│
       │                      RemoveObjectManagerInternal()
       │                    ┌────────────│
       │                    │      ┌─────┴─────┐
Shutdown DBus Thread ─────────────>│DBus thread│
Shutdown DBus Thread <─────────────│DBus thread│
       │                    │      └───────────┘
     ~Bus()                 │
       │                    │
       │<───────────────────┘
RemoveObjectManagerInternalHelper()
~ObjectManager()
┌──────┴──────┐
│Origin thread│
└─────────────┘
-----------------------------------------------------------------

In the second case: ~Bus() is called before ~ObjectManager().

The fix is a use `ObjectManager::Cleanup()` to cleanup the raw_ptr while
the object is still transitively owned by the object it referenced.

Bug: chromium:1478759
Fixed: chromium:1478759
Change-Id: I4ac04d449ab8a7b860256c490f8ac878c1c5c7c5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4839496
Reviewed-by: Ryo Hashimoto <hashimoto@chromium.org>
Commit-Queue: Arthur Sonzogni <arthursonzogni@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1192343}
vuzix-jeff pushed a commit to Vuzix/chromium that referenced this pull request Nov 3, 2023
This reverts commit f1b704d.

Reason for revert: Multiple builders have compile failure because of this cl.

https://ci.chromium.org/ui/p/chrome/builders/official/ios/9561/overview
https://ci.chromium.org/ui/p/chrome/builders/ci/ios-device/815/overview

Original change's description:
> [ios] Fix SetUpList crash when expand button pressed
>
> The crash happens when the expand button is somehow pressed when there
> are no other items in the list. This causes an exception to be thrown
> because we are trying to insert at a specific index, right before the
> expand button.
>
> It turns out that when the "All Set" view is shown, the other list items
> were not being properly removed (including the expand button). This
> change fixes that.
>
> Fixed: 1487698
> Change-Id: I4e13f5ca36cb40e419dd458fc9279a5b288083c6
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4902201
> Reviewed-by: Chris Lu <thegreenfrog@chromium.org>
> Code-Coverage: findit-for-me@appspot.gserviceaccount.com <findit-for-me@appspot.gserviceaccount.com>
> Commit-Queue: Scott Yoder <scottyoder@google.com>
> Cr-Commit-Position: refs/heads/main@{#1204193}

(cherry picked from commit 266be2d)

Change-Id: I8ae6ee877b999b47a0b08355153d886e17b7ed79
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4906148
Reviewed-by: Scott Yoder <scottyoder@google.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Scott Yoder <scottyoder@google.com>
Cr-Original-Commit-Position: refs/heads/main@{#1204713}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4909226
Commit-Queue: Harry Souders <harrysouders@google.com>
Owners-Override: Harry Souders <harrysouders@google.com>
Cr-Commit-Position: refs/branch-heads/6045@{chromium#14}
Cr-Branched-From: 905e8bd-refs/heads/main@{#1204232}
aarongable pushed a commit that referenced this pull request Nov 16, 2023
When the AppStorage is enabled, the AppInstallEventLoggerTest tests are
broken::
WARNING unit_tests[1962400:1962400]: [pref_notifier_impl.cc(41)] Pref observer for policy.system_features_disable_mode found at shutdown.
WARNING unit_tests[1962400:1962400]: [pref_notifier_impl.cc(41)] Pref observer for policy.system_features_disable_list found at shutdown.
Received signal 11 SEGV_MAPERR 0000000000e8
...
#5 0x7f5bac8cc433 pthread_mutex_trylock
...
#11 0x7f5c2e94f11d base::ScopedValidateSequenceChecker::ScopedValidateSequenceChecker()
#12 0x7f5c42fdbc30 PrefNotifierImpl::RemovePrefObserver()
#13 0x7f5c42fe91b1 PrefService::RemovePrefObserver()
#14 0x7f5c42fd3355 PrefChangeRegistrar::RemoveAll()
#15 0x7f5c42fd3299 PrefChangeRegistrar::~PrefChangeRegistrar()

Because the app publishers, ExtensionAppsChromeOs, still observes
pref(g_browser_process->local_state())[1].

Modify the test to reorder the memver variables(profile_ &
pref_service_) creation to destroy the profile first, then destory the
local_state pref, to address the broken test issue, and align with the
production code.

[1] https://source.chromium.org/chromium/chromium/src/+/main:chrome/browser/apps/app_service/publishers/extension_apps_chromeos.cc;l=258;bpv=1

BUG=1385932, b:307623506

Change-Id: I4144cb8d13c3bedfa0b5235cb6097fb1d8bcd655
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4950385
Reviewed-by: Xiyuan Xia <xiyuan@chromium.org>
Commit-Queue: Nancy Wang <nancylingwang@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1225773}
Aikoyori referenced this pull request in Pissandshittium/pissandshittium Dec 8, 2023
(cherry picked from commit 944ef12)

Bug: 1497867
Change-Id: Ie9a32813eb45bd8ff707572d66264bcbd8d46b15
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4993484
Reviewed-by: Andy Paicu <andypaicu@chromium.org>
Commit-Queue: Andy Paicu <andypaicu@chromium.org>
Cr-Original-Commit-Position: refs/heads/main@{#1217735}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4994308
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Krishna Govind <govind@chromium.org>
Cr-Commit-Position: refs/branch-heads/6099@{#14}
Cr-Branched-From: e6ee450-refs/heads/main@{#1217362}
aarongable pushed a commit that referenced this pull request Dec 11, 2023
When the kAppServiceStorage flag is enabled, AppService blocks the
app publishers (ExtensionAppsChromeOs) creating until it's ready, after
reading from the AppStorage file. This affects some tests,e.g.
All/CookieDeprecationLabelAllowedTest.IsClientEligibleChecked*.
Received signal 11 SEGV_MAPERR 0000000000e8
...
#6 0x562c609a8f2f base::ScopedValidateSequenceChecker::ScopedValidateSequenceChecker()
#7 0x562c604a31d4 PrefNotifierImpl::RemovePrefObserver()
#8 0x562c604a0d24 PrefChangeRegistrar::RemoveAll()
#9 0x562c604a0ba0 PrefChangeRegistrar::~PrefChangeRegistrar()
#10 0x562c55e555bc apps::ExtensionAppsChromeOs::~ExtensionAppsChromeOs()
#11 0x562c55e55bca apps::ExtensionAppsChromeOs::~ExtensionAppsChromeOs()
#12 0x562c55e76e2c apps::PublisherHost::~PublisherHost()
#14 0x562c55e0b367 apps::AppServiceProxyAsh::~AppServiceProxyAsh()
#15 0x562c55e0b696 apps::AppServiceProxyAsh::~AppServiceProxyAsh()
...
#19 0x562c5f53b6ac TestingProfile::~TestingProfile()
#20 0x562c5f53bb36 TestingProfile::~TestingProfile()

Because the local state `local_state_` is destroyed before
TestingProfile. Modify the test code, to define `local_state_` first, to
let TestingProfile be destroyed first, which is also aligned with the
production code.

BUG=1385932, b:307623506

Change-Id: I4d7a7d0493ddb6b6f779a7b38344a8f3e05c341b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5106950
Reviewed-by: Abe Boujane <boujane@google.com>
Commit-Queue: Nancy Wang <nancylingwang@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1236035}
aarongable pushed a commit that referenced this pull request Dec 12, 2023
This reverts commit b573ec1.

Reason for revert: file read on main thread causes crashes

https://ci.chromium.org/ui/p/chrome/builders/ci/chromeos-reven-chrome/9260/overview

2023-12-11T23:44:32.631073Z FATAL chrome[4644:4644]: [thread_restrictions.cc(58)] Check failed: !tls_blocking_disallowed. Function marked as blocking was called from a scope that disallows blocking! If this task is running inside the ThreadPool, it needs to have MayBlock() in its TaskTraits. Otherwise, consider making this blocking work asynchronous or, as a last resort, you may use ScopedAllowBlocking (see its documentation for best practices).
tls_blocking_disallowed 1 set by
#0 0x580a56a26b42 base::debug::CollectStackTrace()
#1 0x580a56a0d4d3 base::debug::StackTrace::StackTrace()
#2 0x580a569e746f base::DisallowUnresponsiveTasks()
#3 0x580a5391e8ef content::BrowserMainLoop::PreMainMessageLoopRun()
#4 0x580a5062f27f base::OnceCallback<>::Run()
#5 0x580a540ca43b content::StartupTaskRunner::RunAllTasksNow()
#6 0x580a5391e206 content::BrowserMainLoop::CreateStartupTasks()
#7 0x580a5392166e content::BrowserMainRunnerImpl::Initialize()
#8 0x580a5391bad6 content::BrowserMain()
#9 0x580a560952b6 content::RunBrowserProcessMain()
#10 0x580a56097a80 content::ContentMainRunnerImpl::RunBrowser()
#11 0x580a5609715e content::ContentMainRunnerImpl::Run()
#12 0x580a56093df5 content::RunContentProcess()
#13 0x580a56093f42 content::ContentMain()
#14 0x580a5010c79d ChromeMain
#15 0x7d10446316c6 __libc_start_call_main
#16 0x7d1044631782 __libc_start_main_alias_2
#17 0x580a5010c531 _start

#0 0x580a56a26b42 base::debug::CollectStackTrace()
#1 0x580a56a0d4d3 base::debug::StackTrace::StackTrace()
#2 0x580a4ffa72c8 logging::LogMessage::~LogMessage()
#3 0x580a56923860 logging::(anonymous namespace)::DCheckLogMessage::~DCheckLogMessage()
#4 0x580a4ffa6d67 logging::CheckError::~CheckError()
#5 0x580a569e680b base::internal::AssertBlockingAllowed()
#6 0x580a50037d3b base::ScopedBlockingCall::ScopedBlockingCall()
#7 0x580a5fffd0fb base::File::Stat()
#8 0x580a56a21ae3 base::GetFileInfo()
#9 0x580a5a144486 first_run::GetFirstRunSentinelCreationTime()
#10 0x580a55d04f18 ash::ReportControllerInitializer::OwnershipStatusChanged()
#11 0x580a55d3a722 ash::DeviceSettingsService::NotifyOwnershipStatusChanged()
#12 0x580a55d39e59 ash::DeviceSettingsService::HandleCompletedOperation()
#13 0x580a55d3a0c8 ash::DeviceSettingsService::HandleCompletedAsyncOperation()
#14 0x580a538a96d8 base::internal::FunctorTraits<>::Invoke<>()
#15 0x580a55d3a8c2 base::internal::Invoker<>::RunOnce()

Original change's description:
> Create ReportInitializer that checks for browser preconditions
>
> Introduce ReportControllerInitializer class in chrome/browser/ash,
> functioning as a DeviceSettingsService::Observer. The class waits for
> the OwnershipStatusChanged callback with ownership status indicating
> device ownership, checks for the presence of the .oobe_completed file,
> and waits for CrosSettings::PrepareTrustedValues to signal TRUSTED
> status.
>
> Only after these preconditions are met does the class proceed
> to initialize the ReportController.
>
> BUG=chromium:1504019
>
> Change-Id: I0bd93c2eb9f83669ea23395d59b292a4cc858bcb
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5047743
> Reviewed-by: Xiyuan Xia <xiyuan@chromium.org>
> Commit-Queue: Hirthanan Subenderan <hirthanan@google.com>
> Reviewed-by: Pavol Marko <pmarko@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1235879}

Bug: chromium:1504019
Change-Id: If41cc3e2fa0330afa6cb5aeb84f05efd1e614669
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5113660
Auto-Submit: Joel Hockey <joelhockey@chromium.org>
Reviewed-by: Hirthanan Subenderan <hirthanan@google.com>
Commit-Queue: Joel Hockey <joelhockey@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: James Cook <jamescook@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1236048}
aarongable pushed a commit that referenced this pull request Dec 12, 2023
When the kAppServiceStorage flag is enabled, AppService blocks the
app publishers creating until it's ready, after reading from the
AppStorage file. This affects some tests,e.g. TetherServiceTest.*.
Received signal 11 SEGV_MAPERR 0000000000e8
...
base::ScopedValidateSequenceChecker::ScopedValidateSequenceChecker()
#7 0x563b848f01d4 PrefNotifierImpl::RemovePrefObserver()
#8 0x563b848edd24 PrefChangeRegistrar::RemoveAll()
#9 0x563b848edba0 PrefChangeRegistrar::~PrefChangeRegistrar()
#10 0x563b7a2a25bc apps::ExtensionAppsChromeOs::~ExtensionAppsChromeOs()
#11 0x563b7a2a2bca apps::ExtensionAppsChromeOs::~ExtensionAppsChromeOs()
#14 0x563b7a258367 apps::AppServiceProxyAsh::~AppServiceProxyAsh()
#15 0x563b7a258696 apps::AppServiceProxyAsh::~AppServiceProxyAsh()
...
#19 0x563b839886ac TestingProfile::~TestingProfile()
#20 0x563b83988b36 TestingProfile::~TestingProfile()

Because `local_pref_service_` is destroyed before TestingProfile. Modify
the test code, to define TestingProfile
after `local_pref_service_` to destroy TestingProfile first.

Remove `scoped_user_manager_`, because TestingProfile can create
FakeChromeUserManager in its construct function[1].

[1] https://source.chromium.org/chromium/chromium/src/+/main:chrome/test/base/testing_profile.cc;l=267

BUG=1385932, b:307623506

Change-Id: Id13cff8e7dc283bd6aa80700956058b82afb2f0f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5102370
Reviewed-by: Xiyuan Xia <xiyuan@chromium.org>
Commit-Queue: Nancy Wang <nancylingwang@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1236053}
aarongable pushed a commit that referenced this pull request Dec 15, 2023
It was unsafe because it causes a file (/tmp/ping.unload-image) to be written and deleted and if another version of the test (e.g. in a virtual suite) runs in parallel it will interfere.

The fix is to the give the file a unique suffix. I also rewrote it to use `fetch()` instead of an image when deleting. I couldn't leave it as a static img because the URL is dynamic, so converting to use fetch was simpler (and allowed the flow of the test to be more linear).

You can see in PS2, where I duplicated the test that it was not found to be a new flaky test. Compare this with runs of https://crrev.com/c/5109202 where it was being renamed.

You can also see a failure here in run #14 where the file has already been deleted by the time check-ping.php reaches the end (all check-ping.php does is wait forever until the file exists, so clearly something else has deleted its file).

https://ci.chromium.org/ui/p/chromium/builders/try/linux-rel/1640899/test-results?q=ExactID%3Aninja%3A%2F%2F%3Ablink_web_tests%2Fhttp%2Ftests%2Fnavigation%2Fimage-load-in-pagehide-handler.html+VHash%3A32f081785efe9631


Bug: 1488371
Change-Id: Ib25ad04ce3246eaeba011f00fea59ba73f399c3b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5125013
Reviewed-by: Mingyu Lei <leimy@chromium.org>
Commit-Queue: Fergal Daly <fergal@chromium.org>
Commit-Queue: Mingyu Lei <leimy@chromium.org>
Auto-Submit: Fergal Daly <fergal@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1237927}
aarongable pushed a commit that referenced this pull request Dec 19, 2023
When the kAppServiceStorage flag is enabled, AppService blocks the
app publishers creating until it's ready, after reading from the
AppStorage file. This affects some tests, e.g.
DeviceAPIServiceRegularUserTest.*, because no data path
for the profile:
Received signal 11 SEGV_MAPERR 000000000017
...
#9 0x7fb1f37f6ec7 base::FilePath::Append()
#10 0x7fb20a6396ec ash::BrowserContextHelper::GetBrowserContextPathByUserIdHash()
#11 0x55d607da3a0c ash::ProfileHelperImpl::GetUserByProfile()
#12 0x55d607da32f7 ash::ProfileHelper::IsPrimaryProfile()
#13 0x55d616260503 NearbySharingServiceFactory::IsNearbyShareSupportedForBrowserContext()
#14 0x55d6156cd0fc NotificationDisplayServiceImpl::NotificationDisplayServiceImpl()
#15 0x55d6156ccc49 std::__Cr::make_unique<>()
...
BrowserContextKeyedServiceFactory::GetServiceForBrowserContext()
#20 0x55d6156ccab2 NotificationDisplayServiceFactory::GetForProfile()
#21 0x55d605d350be apps::ExtensionAppsChromeOs::Initialize()
#22 0x55d605d8041b apps::PublisherHost::Initialize()
#23 0x55d605d8026c apps::PublisherHost::PublisherHost()

Actually TestingProfile can create FakeChromeUserManager[1]. So we
can get  FakeChromeUserManager directly.

Remove `scoped_user_manager_`, as that has been moved to TestProfile.

[1] https://chromium-review.googlesource.com/c/chromium/src/+/5076443/20/chrome/test/base/testing_profile.cc

BUG=1385932, b:307623506

Change-Id: Ib26c7fc9fcfa950e01246df6e13a8f3ee449b22b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5134109
Reviewed-by: Ben Franz <bfranz@chromium.org>
Commit-Queue: Nancy Wang <nancylingwang@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1239047}
aarongable pushed a commit that referenced this pull request Jan 6, 2024
…21.0.6161.0-r1 to 121-6126.0-1701694528-benchmark-121.0.6167.0-r1

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/cros-afdo-arm-chromium-beta
Please CC c-compiler-chrome@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Chromium Beta Branch: https://bugs.chromium.org/p/chromium/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Tbr: c-compiler-chrome@google.com
Change-Id: Icd1dd4121c6136fbfc40ea8558d45cdf25cfc58f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5090237
Commit-Queue: Chrome Release Autoroll <chromium-release-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: Chrome Release Autoroll <chromium-release-autoroll@skia-public.iam.gserviceaccount.com>
Cr-Commit-Position: refs/branch-heads/6167@{#14}
Cr-Branched-From: 222e786-refs/heads/main@{#1233107}
aarongable pushed a commit that referenced this pull request Jan 11, 2024
This reverts commit dfaa989.

Reason for revert:
[tree gardener]
In the change where this landed, both the
"Linux Chromium OS ASan LSan Tests (1)" and "linux-chromeos-dbg" bots started failing in
DeviceLocalAccountTest.TermsOfServiceWithLocaleSwitch

first failing runs:
- https://ci.chromium.org/ui/p/chromium/builders/ci/Linux%20Chromium%20OS%20ASan%20LSan%20Tests%20(1)/55615/test-results
- https://ci.chromium.org/ui/p/chromium/builders/ci/linux-chromeos-dbg/35304/test-results

Failure relates to the login / OOBE code for ChromeOS.  This is the only change on the blamelist that touches relevant code.  Thus, while I didn't repro to see if this fixes the error, I'm confident enough to move ahead to get the tree to turn green.

Failure is long (follow links above); looks like a failed assert, here's the key line I think:
>
[thread_pool_impl.cc(502)] Check failed: transaction.traits().thread_policy_set_explicitly(). A ThreadPolicy must be specified in the TaskTraits of an UpdateableSequencedTaskRunner whose priority is increased from BEST_EFFORT. See ThreadPolicy documentation.

Here's a longer version (though not as long as in the bot links) that provides more context:
---
2024-01-11T17:01:07.911157Z VERBOSE1 browser_tests[72009:72009]: [gaia_screen_handler.cc(1001)] Gaia is loaded
2024-01-11T17:01:11.120590Z WARNING browser_tests[72009:72009]: [attestation_flow_adaptive.cc(156)] Default attestation flow failed: 1
2024-01-11T17:01:11.121338Z ERROR browser_tests[72009:72009]: [attestation_flow.cc(393)] Attestation: Failed to create certificate request. Status: 1
2024-01-11T17:01:11.121443Z ERROR browser_tests[72009:72009]: [machine_certificate_uploader_impl.cc(56)] Attestation DBus method or server called failed with status:1: GetNewCertificate@chrome/browser/ash/attestation/machine_certificate_uploader_impl.cc:166
2024-01-11T17:01:11.108700Z FATAL browser_tests[72129:72513]: [thread_pool_impl.cc(502)] Check failed: transaction.traits().thread_policy_set_explicitly(). A ThreadPolicy must be specified in the TaskTraits of an UpdateableSequencedTaskRunner whose priority is increased from BEST_EFFORT. See ThreadPolicy documentation.
    #0 0x558b56022d76 in ___interceptor_backtrace /b/s/w/ir/cache/builder/src/third_party/llvm/compiler-rt/lib/asan/../sanitizer_common/sanitizer_common_interceptors.inc:4358:13
    #1 0x558b7938d202 in base::debug::CollectStackTrace(void const**, unsigned long) ./../../base/debug/stack_trace_posix.cc:1040:7
    #2 0x558b7933ddc3 in StackTrace ./../../base/debug/stack_trace.cc:221:12
    #3 0x558b7933ddc3 in base::debug::StackTrace::StackTrace() ./../../base/debug/stack_trace.cc:218:28
    #4 0x558b790191d9 in logging::LogMessage::Flush() ./../../base/logging.cc:703:29
    #5 0x558b79018d44 in logging::LogMessage::~LogMessage() ./../../base/logging.cc:694:3
    #6 0x558b78fc8305 in ~DCheckLogMessage ./../../base/check.cc:124:3
    #7 0x558b78fc8305 in logging::(anonymous namespace)::DCheckLogMessage::~DCheckLogMessage() ./../../base/check.cc:120:32
    #8 0x558b78fc7950 in logging::NotReachedError::~NotReachedError() ./../../base/check.cc:298:3
    #9 0x558b7925ab10 in base::internal::ThreadPoolImpl::UpdatePriority(scoped_refptr<base::internal::TaskSource>, base::TaskPriority) ./../../base/task/thread_pool/thread_pool_impl.cc:502:5
    #10 0x558b7925b122 in UpdateJobPriority ./../../base/task/thread_pool/thread_pool_impl.cc:533:3
    #11 0x558b7925b122 in non-virtual thunk to base::internal::ThreadPoolImpl::UpdateJobPriority(scoped_refptr<base::internal::TaskSource>, base::TaskPriority) ./../../base/task/thread_pool/thread_pool_impl.cc:0:0
    #12 0x558b79187608 in base::JobHandle::UpdatePriority(base::TaskPriority) ./../../base/task/post_job.cc:110:32
    #13 0x558b6a11e10e in v8::internal::OptimizingCompileDispatcher::QueueForOptimization(v8::internal::TurbofanCompilationJob*) ./../../v8/src/compiler-dispatcher/optimizing-compile-dispatcher.cc:232:18
    #14 0x558b69fa6bae in CompileTurbofan_Concurrent ./../../v8/src/codegen/compiler.cc:1154:45
    #15 0x558b69fa6bae in v8::internal::(anonymous namespace)::CompileTurbofan(v8::internal::Isolate*, v8::internal::Handle<v8::internal::JSFunction>, v8::internal::Handle<v8::internal::SharedFunctionInfo>, v8::internal::ConcurrencyMode, v8::internal::BytecodeOffset, v8::internal::(anonymous namespace)::CompileResultBehavior) ./../../v8/src/codegen/compiler.cc:1221:9
    #16 0x558b69f7febc in v8::internal::(anonymous namespace)::GetOrCompileOptimized(v8::internal::Isolate*, v8::internal::Handle<v8::internal::JSFunction>, v8::internal::ConcurrencyMode, v8::internal::CodeKind, v8::internal::BytecodeOffset, v8::internal::(anonymous namespace)::CompileResultBehavior) ./../../v8/src/codegen/compiler.cc:1385:12
    #17 0x558b69f84d37 in v8::internal::Compiler::CompileOptimized(v8::internal::Isolate*, v8::internal::Handle<v8::internal::JSFunction>, v8::internal::ConcurrencyMode, v8::internal::CodeKind) ./../../v8/src/codegen/compiler.cc:2849:7
    #18 0x558b6b7dab91 in v8::internal::__RT_impl_Runtime_CompileOptimized(v8::internal::Arguments<(v8::internal::ArgumentsType)0>, v8::internal::Isolate*) ./../../v8/src/runtime/runtime-compiler.cc:140:3
    #19 0x558b6b7d9de7 in v8::internal::Runtime_CompileOptimized(int, unsigned long*, v8::internal::Isolate*) ./../../v8/src/runtime/runtime-compiler.cc:98:1
#16 0x7ff31fe7a936 <unknown>
Crash keys:
  "view-count" = "1"
  "loaded-origin-0" = "chrome://oobe"
  "web-frame-count" = "10"
  "gpu-gl-renderer" = "ANGLE (Google, Vulkan 1.3.0 (SwiftShader Device (Subzero) (0x0000C0DE)), SwiftShader driver-5.0.0)"
  "gpu-gl-vendor" = "Google Inc. (Google)"
  "gpu-generation-intel" = "0"
  "gpu-vsver" = "1.00"
  "gpu-psver" = "1.00"
  "gpu-driver" = "5.0.0"
  "gpu_count" = "0"
  "gpu-devid" = "0xffff"
  "gpu-venid" = "0xffff"
  "renderer_foreground" = "true"
  "v8_ro_space_firstpage_address" = "0x7dd400000000"
  "v8_isolate_address" = "0x53100003d000"
  "variations" = "f21633f4-ffc53c4,2510663e-3d47f4f4,bb437d9a-3f4a17df,376d0b70-3f4a17df,648fbd62-e4165b4e,bb88d3f2-3f4a17df,ee1a3df6-3f4a17df,b172567-3f4a17df,b334488c-3f4a17df,eddd0d82-3f4a17df,dc88470b-103f36ee,13427e22-3f4a17df,f2855e3d-de2b6078,f9bc57e6-3f4a17df,ae727645-d13781e7,e18619cd-b79a0e10,98daad83-3dde0e73,65df225-3f4a17df,bf13013c-3f4a17df,80534abb-3f4a17df,589f2048-65bced95,59a5db0f-5fa57bf5,313ed211-45095e30,8ce3f2ee-505dc0eb,24a76ae4-4d56ae14,62a517c3-f543ada3,728febbe-3f4a17df,999e8980-6ec7edcb,da364547-3f4a17df,ba7d85e3-3f4a17df,3eeac5b7-31d79d01,4a0b88ea-3f4a17df,d3e86280-6b12e521,de5d7b24-3f4a17df,4c87712f-3f4a17df,189daaf7-3f4a17df,28329b37-17727981,6b1f3ab8-d16f1562,3bcba8c9-d6781875,41e765a5-39a60e4b,fe33e908-d4fba82a,419d9581-5606a6c,4749874c-455e925b,12733ec4-3f4a17df,e521d2ef-3f4a17df,48b49fae-3f4a17df,65570806-377be55a,e5249c82-b58d8ad4,520b2a89-88bf9f37,e32803c5-3f4a17df,669a7db8-3f4a17df,d97f772b-c4b8b19c,d552ee5c-3f4a17df,90be0982-ebff1847,7ab2cfe6-3f4a17df,3c77df8a-cd85b60b,bfb9932-3f4a17df,1609f-f40db7ed,26665953-8c264e76,9534e049-65bced95,255aa854-2daf62e4,3fd33f16-27b09c4c,159a3c4b-3f4a17df,97f76b00-3f4a17df,c272f203-3ecfd0fd,266af18d-3f4a17df,895b81d9-35269e3d,36d5ee52-3f4a17df,17cd3426-14f761da,f9152fd1-9b7fba90,391562d6-3f4a17df,910af27f-b2e6b991,cad46b80-3f4a17df,8bccc03b-3f4a17df,fc9ceed7-ee2a48b4,cbd17ba8-eeadba7f,44e7fbc0-cd68d07,1b245f0d-bb2a1241,9e5c75f1-30e1b12b,e79d4056-80f9a33e,62366563-3f4a17df,41d4f9ff-3f4a17df,dcceede7-908383eb,9c257000-a9caf5ec,75ffb03a-3f4a17df,265c01cc-3f4a17df,da493d3c-3f4a17df,72bafd3e-cdb4c186,f3ed486d-3f4a17df,a70abf79-3f4a17df,99c32967-f0a9a61e,c01b2e59-3f4a17df,4ffe34af-4ffe34af,741e95d4-3f4a17df,a779bb20-3f4a17df,77b7ea96-9a159164,d196fff7-e8f3bc02,c984ae3d-65bced95,2da2abac-b7f59038,47be28a0-3f4a17df,5af3ddb7-3f4a17df,94edc5b9-3f4a17df,30cf4980-61673e6,f3b6291d-f8c32bdd,97875110-3f4a17df,746780a8-3f4a17df,f9be514e-3f4a17df,5c7c8339-3f4a17df,d0083347-bb06605c,ef4764d7-c9f4d4ef,84355c07-2e6f4684,bbb8e428-3f4a17df,caa76e48-caa76e48,4e762e93-cbffbe29,49ad328f-3f4a17df,7ec047c2-3f4a17df,ade3efeb-e1cc0f14,3c52b3a3-3f4a17df,db59f83a-3f4a17df,fcb010e5-3f4a17df,4ac391eb-ab964055,1166396-f9095748,f38ef081-db89b8b9,e1adfff5-3f4a17df,8d7344de-3f4a17df,8d549a7a-3f4a17df,858aa29b-3f4a17df,1bb6a450-3f4a17df,df41299a-3f4a17df,601dc969-3f4a17df,a84012f2-3f4a17df,77bc3423-3f4a17df,f156bd50-9bc44f15,ddb8ff70-3f4a17df,6f55e1a1-3f4a17df,137f6fe-3f4a17df,b88dc83e-3f4a17df,4620a8f0-3f4a17df,293cfb52-3f4a17df,fc6d7b7d-3f4a17df,8f8648eb-3f4a17df,a3c3aad0-3f4a17df,9982045c-3f4a17df,71c14987-3f4a17df,d2aa7cc-3f4a17df,8d182722-3f4a17df,b1b1e1e7-3f4a17df,91c5512e-3d47f4f4,e607d888-3d47f4f4,ab1d6da3-3f4a17df,19e446cd-3f4a17df,7f19e54-3f4a17df,c49d2b35-3f4a17df,28410024-3f4a17df,3b96a1d-3f4a17df,bea4a9c2-ef4c90a8,53df4f56-3f4a17df,8f3625ce-3f4a17df,1ae0f6fa-bb3e7be,c77a0ff0-3f4a17df,6becb1e-a6ea97a2,216c8a00-3f4a17df,542d15b1-3f4a17df,595f5eb0-f23d1dea,5a18fe50-3f4a17df,db55e85b-ecb6e1a6,ff1dade5-9a7bebfa,22baf79f-3f4a17df,2e8b9b7-3f4a17df,3fc87288-3f4a17df,864a51e5-aa32be6,94f1fa38-ced24900,1130dae-12829759,189f9544-3d47f4f4,9a564e2a-3f4a17df,f82ee03-ea8328,d4754f61-3f4a17df,54412203-573b100b,7840af09-3d47f4f4,ca5a2953-ff983c32,3eabe0b8-3f4a17df,fd051c38-3f4a17df,a2d45efe-2319ef5a,78ce0fb-3f4a17df,c297985a-3f4a17df,5eb745a8-3f4a17df,7c0d937f-3f4a17df,c845dfe2-3d47f4f4,4ea303a6-3f4a17df,3042ad4b-ad2fa222,b3c54bb3-a058b5d3,84ddfdc1-f23d1dea,569d11c1-d2eecd9e,c0981e85-ae90dc34,cd9c6915-34a254ad,5d1017fe-3f4a17df,f2b6a878-3f4a17df,fed4419a-f774730e,7ea865ad-3f4a17df,f6264095-c3f8eab0,186d6e2c-36c0e608,26016f9f-4df4f25e,95a095bd-3f4a17df,d92d97b4-7b486c9d,45b76973-e9a48029,6b9250af-3f4a17df,f3d990c-3f4a17df,6d2935ee-3f4a17df,b6aa8178-3f4a17df,951dcd0c-3f4a17df,ae1924b1-f9bbb79f,784a7e92-f24c4ee2,7989c213-3f4a17df,bc2567e7-3f4a17df,3c978b59-3f4a17df,348f98ef-3f4a17df,6cfccc3-3f4a17df,238c836c-3f4a17df,89f2e43d-3f4a17df,d07b6af9-9d12ca0c,4bc95f1e-ab202076,166cb0e5-3f4a17df,e8493f7e-3f4a17df,62f811c6-3f4a17df,3cec0d8b-3f4a17df,ef85228a-3f4a17df,5f656ab9-3f4a17df,17f5c3f5-3f4a17df,a2fd384c-cc71bb94,1fce7d57-3f4a17df,840f775d-3f4a17df,35a386c3-3f4a17df,90fa3bb1-3f4a17df,e8c68789-49a20295,d990c4ac-3f4a17df,97063883-1f820d08,b0e626b-5fa21eff,591a24c9-581fbe90,7ed8ca84-f2a38224,c13d5190-3f4a17df,27350a9-3f4a17df,31aad27b-3f4a17df,b8014e4c-3f4a17df,600cb15c-3f4a17df,a9f7f0-3d47f4f4,7eb2f74d-3f4a17df,1060f1b8-9b7a8785,7cc23c2c-3f4a17df,1d865dc8-3b8fb192,6c377b0f-a744f381,"
  "num-experiments" = "250"
  "reentry_guard_tls_slot" = "unused"
  "switch-20" = "--variations-seed-version"
  "switch-19" = "--field-trial-handle=0,i,5682912113270406483,1683931613705479505"
  "switch-18" = "--shared-files=v8_snapshot_data:100"
  "switch-17" = "--launch-time-ticks=5479373856"
  "switch-16" = "--time-ticks-at-unix-epoch=-1704986906508616"
  "switch-15" = "--renderer-client-id=5"
  "switch-14" = "--enable-main-frame-before-activation"
  "switch-13" = "--num-raster-threads=4"
  "switch-12" = "--touch-selection-strategy=direction"
  "switch-11" = "--lang=en-US"
  "switch-10" = "--disable-databases"
  "switch-9" = "--test-type=browser"
  "switch-8" = "--ipc-connection-timeout=120"
  "switch-7" = "--force-color-profile=srgb"
  "switch-6" = "--dom-automation"
  "commandline-disabled-feature-3" = "TestFeatureForBrowserTest2"
  "commandline-disabled-feature-2" = "RestartNetworkServiceUnsandboxedForFailedLaunch"
  "commandline-disabled-feature-1" = "PreconnectToSearch"
  "commandline-enabled-feature-1" = "TestFeatureForBrowserTest1"
  "switch-5" = "--no-sandbox"
  "switch-4" = "--unsafely-treat-insecure-origin-as-secure=*.linux.test"
  "switch-3" = "--homedir=/home/chrome-bot"
  "switch-2" = "--noerrdialogs"
  "switch-1" = "--enable-crash-reporter=,"
  "num-switches" = "26"
---


BUG=b/318757609

Original change's description:
> [QuickStart] Account creation
>
> Add the remaining bits to QuickStart so that it proceeds with the
> user account creation on the device. Currently, instead of simply
> passing the authorization code directly to ChromeOS, an intermediate
> step is performed to retrieve the currently missing Gaia ID.
>
> Test: Manual on Pixelbook & Pixel7
> Bug: b/318681712
> Change-Id: I40a181f365522787ad6694d088504eeadb6f6809
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5168710
> Reviewed-by: Michael Hansen <hansenmichael@google.com>
> Reviewed-by: Anastasiia N <anastasiian@chromium.org>
> Commit-Queue: Renato Silva <rrsilva@google.com>
> Reviewed-by: Kush Sinha <sinhak@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1245802}

Bug: b/318681712
Change-Id: I19030433a2049b53024e5b6521a0f7eada321d3e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5189584
Owners-Override: Mark Pearson <mpearson@chromium.org>
Auto-Submit: Mark Pearson <mpearson@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1246129}
aarongable pushed a commit that referenced this pull request Jan 17, 2024
When the kAppServiceStorage flag is enabled, AppService blocks the
app publishers creating until it's ready, after reading from the
AppStorage file. This affects some tests, e.g.
NetworkConfigurationUpdaterAshTest.*. Those tests crash because no
data path for the profile:
Received signal 11 SEGV_MAPERR 000000000017
...
#9 0x7fb71a1fe827 base::FilePath::Append()
#10 0x7fb72e112a6c ash::BrowserContextHelper::GetBrowserContextPathByUserIdHash()
#11 0x556a750dbf21 ash::ProfileHelperImpl::GetUserByProfile()
#12 0x556a750db807 ash::ProfileHelper::IsPrimaryProfile()
#13 0x556a834e83a3 NearbySharingServiceFactory::IsNearbyShareSupportedForBrowserContext()
#14 0x556a8295719c NotificationDisplayServiceImpl::NotificationDisplayServiceImpl()
#15 0x556a82956ce9 std::__Cr::make_unique<>()
...
#19 0x7fb6fcef560c BrowserContextKeyedServiceFactory::GetServiceForBrowserContext()
#20 0x556a82956b52 NotificationDisplayServiceFactory::GetForProfile()
#21 0x556a7305f5be apps::ExtensionAppsChromeOs::Initialize()
#22 0x556a730aa83b apps::PublisherHost::Initialize()
#23 0x556a730aa68c apps::PublisherHost::PublisherHost()

The reason should because of FakeUserManager. Actually the fake user
manager is created in TestingProfile, so we don't need to build a new
one, and we can get the user manager directly with:
user_manager::UserManager::Get()

Modify the test setup process to get the user manager directly, and
remove `user_manager_` in the test code, as that has been moved to
TestProfile.

BUG=1385932, b:307623506

Change-Id: I5873858d5e18ca6196bc5b83ed38d87e1f18ae14
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5188272
Reviewed-by: Anqing Zhao <anqing@chromium.org>
Commit-Queue: Nancy Wang <nancylingwang@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1248444}
aarongable pushed a commit that referenced this pull request Jan 18, 2024
...triggers entry doom and thus ends up running the operation queue in the wrong spot of creation (and entry op) completion handler. This can among other things result in this madness:

#6 disk_cache::SimpleEntryImpl::CloseInternal()
#7 disk_cache::SimpleEntryImpl::RunNextOperationIfNeeded()
#8 SimpleEntryImpl::ScopedOperationRunner::~ScopedOperationRunner()
#9 disk_cache::SimpleEntryImpl::WriteDataInternal()
#10 disk_cache::SimpleEntryImpl::RunNextOperationIfNeeded()
#11 SimpleEntryImpl::ScopedOperationRunner::~ScopedOperationRunner()
#12 disk_cache::SimpleEntryImpl::WriteDataInternal()
#13 disk_cache::SimpleEntryImpl::RunNextOperationIfNeeded()
#14 disk_cache::SimpleEntryImpl::DoomEntry()
#15 disk_cache::SimpleBackendImpl::DoomEntryFromHash()
#16 disk_cache::SimpleBackendImpl::DoomEntries()
#17 disk_cache::SimpleIndex::StartEvictionIfNeeded()
#18 disk_cache::SimpleIndex::UpdateEntrySize()
#19 disk_cache::SimpleEntryImpl::UpdateDataFromEntryStat()
#20 disk_cache::SimpleEntryImpl::CreationOperationComplete()
(namespace elided twice to avoid wrapping).

... which means we end up at the in_results = nullptr line near the bottom of CreationOperationComplete with null `synchronous_entry_`(!) (and a dangling in_results->sync_entry, where one would expect the two to be aliases). I *think* we won't actually deliver a callback from this state since we likely needed to be in optimistic path to got thus far, but I am not certain.

Similarly, when this sort of thing happens from within read/write ops, it could potentially cause callbacks to be delivered in wrong order if the queued op ends up being a stream 0 operation, which can be executed without a round trip to a worker thread.

Change-Id: Iac8058f0d18225677e361c6cdddf92d28fb4833f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5054619
Reviewed-by: Adam Rice <ricea@chromium.org>
Reviewed-by: Kenichi Ishibashi <bashi@chromium.org>
Commit-Queue: Maks Orlovich <morlovich@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1248862}
aarongable pushed a commit that referenced this pull request Jan 23, 2024
This CL will update lacros version in //chrome/LACROS_QA_QUALIFIED_VERSION. This
file will be used in Upreving the RootFS-Lacros in the CROS image.

If this CL caused regressions, please revert and pause the autoroller at
https://luci-scheduler.appspot.com/jobs/chrome/lacros-qa-qualified-tracking-roller
Also please file a bug to OS>LaCrOS>Partner, and CC svenzheng@chromium.org.

R=rubber-stamper@appspot.gserviceaccount.com

Change-Id: Iaf827365639836b3b42a2a70b7072b0d04b82586
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5230379
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: lacros-tracking-roller@chops-service-accounts.iam.gserviceaccount.com <lacros-tracking-roller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/branch-heads/6261@{#14}
Cr-Branched-From: 9755d9d-refs/heads/main@{#1250580}
aarongable pushed a commit that referenced this pull request Jan 25, 2024
Legacy on-demand now correctly saves the `ap` and brand code parameters
to `IAppBundleWeb::createApp`.

(cherry picked from commit 362a259)

Fixed: 1521449
Change-Id: I525fcca3bf761953bbe28f17101f1400309af7af
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5235257
Reviewed-by: Joshua Pawlicki <waffles@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Commit-Queue: Sorin Jianu <sorin@chromium.org>
Commit-Queue: S Ganesh <ganesh@chromium.org>
Auto-Submit: S Ganesh <ganesh@chromium.org>
Commit-Queue: Joshua Pawlicki <waffles@chromium.org>
Cr-Original-Commit-Position: refs/heads/main@{#1251740}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5236535
Reviewed-by: Ben Mason <benmason@chromium.org>
Cr-Commit-Position: refs/branch-heads/6253@{#14}
Cr-Branched-From: b99fcea-refs/heads/main@{#1247893}
aarongable pushed a commit that referenced this pull request Jan 26, 2024
(cherry picked from commit c641b87)

(cherry picked from commit 2490693)

Bug: b/322366002
Change-Id: Ic3639b6346f73586251d186ad483233ea0dd1e38
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5190310
Reviewed-by: Krishna Govind <govind@chromium.org>
Commit-Queue: Harry Souders <harrysouders@google.com>
Owners-Override: Krishna Govind <govind@chromium.org>
Commit-Queue: Krishna Govind <govind@chromium.org>
Cr-Original-Original-Commit-Position: refs/heads/main@{#1246070}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5239206
Auto-Submit: Harry Souders <harrysouders@google.com>
Cr-Original-Commit-Position: refs/branch-heads/6240@{#4}
Cr-Original-Branched-From: f37d50f-refs/heads/main@{#1245594}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5239240
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/branch-heads/6241@{#14}
Cr-Branched-From: f2c8067-refs/heads/main@{#1245833}
aarongable pushed a commit that referenced this pull request Jan 26, 2024
This CL will update lacros version in //chrome/LACROS_QA_QUALIFIED_VERSION. This
file will be used in Upreving the RootFS-Lacros in the CROS image.

If this CL caused regressions, please revert and pause the autoroller at
https://luci-scheduler.appspot.com/jobs/chrome/lacros-qa-qualified-tracking-roller
Also please file a bug to OS>LaCrOS>Partner, and CC svenzheng@chromium.org.

R=rubber-stamper@appspot.gserviceaccount.com

Change-Id: I429fe7d640abe9de2b4b9ad1092b60224b856c1b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5241257
Auto-Submit: lacros-tracking-roller@chops-service-accounts.iam.gserviceaccount.com <lacros-tracking-roller@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/branch-heads/6262@{#14}
Cr-Branched-From: be51b44-refs/heads/main@{#1251193}
aarongable pushed a commit that referenced this pull request Jan 26, 2024
In xu_camera_service:
  upstream client is UI thread;
  direct entrypoints are from mojom calls (IO thread);
  GetDevicePath dependency runs on IO thread;
  GetCtrlDbus/SetCtrlDbus use DBus (UI thread).

BUG=b:284299455
TESTED=on endeavour M108 with Atlas camera

(cherry picked from commit 520f768)

Change-Id: I6da3f64ea6d7d9250812be1b2c348f41465f76bf
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4874629
Owners-Override: Richard Yeh <rcy@google.com>
Reviewed-by: Kyle Williams <kdgwill@chromium.org>
Commit-Queue: Kyle Williams <kdgwill@chromium.org>
Cr-Original-Commit-Position: refs/branch-heads/5359_179@{#40}
Cr-Original-Branched-From: 296508e-refs/branch-heads/5359@{#1312}
Cr-Original-Branched-From: 27d3765-refs/heads/main@{#1058933}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4968518
Auto-Submit: Richard Yeh <rcy@google.com>
Cr-Commit-Position: refs/branch-heads/5735_289@{#14}
Cr-Branched-From: e2157fd-refs/branch-heads/5735@{#1538}
Cr-Branched-From: 2f562e4-refs/heads/main@{#1135570}
aarongable pushed a commit that referenced this pull request Feb 20, 2024
The culprit CL https://crrev.com/c/5298027 updated how menu item labels
are registered for menu items, but failed to update the About ChromeOS
menu item when the revamp is disabled.
Before: http://screen/3oTsrQuAJFbCYAX.png
After: http://screen/Ax3LTj3KRn5kx9C.png
Verified fix on M123: http://screen/Aai8hZSeHuShVEL.png

Bug: b:326084810, b:326088009
Test: Manually verify UI
Change-Id: I249393bfa6d855c4177ecf027c56ad3ea32129b7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5309608
Reviewed-by: Connie Xu <conniekxu@chromium.org>
Commit-Queue: Wes Okuhara <wesokuhara@google.com>
Cr-Commit-Position: refs/branch-heads/6312@{#14}
Cr-Branched-From: 6711dcd-refs/heads/main@{#1262506}
aarongable pushed a commit that referenced this pull request Mar 5, 2024
…nsertableStreams param"

Change since previous: Reduce number of frames/packets waited for in
insertable-streams web test and add it to SlowTests. See Patchset
1 -> Patchset 5 diff.

This is a reland of commit e5518aa

Original change's description:
> Allow createEncodedStreams on PCs without encodedInsertableStreams param
>
> Allow creating Encoded Transforms for any Receivers and Senders, so
> long as createEncodedStreams() is called by JS synchronously after
> sender/receiver creation. This is achieved by setting up a WebRTC
> transform on all transceivers, but "short circuiting" it if JS hasn't
> set up its own transform within an event loop spin of creation. This
> will make the transform just pass frames to be transformed directly back
> without invoking the cost of a thread hop or any JS work.
>
> The existing behaviour (dropping all frames until a JS transform is
> installed) is preserved for PCs created with {encodedInsertableStreams:
> true}.
>
> This implements the algorithm defined in https://www.w3.org/TR/2023/WD-webrtc-encoded-transform-20231012/#stream-creation,
> but for the Chromium createEncodedStreams() method, improving
> conformance incrementally.
>
>
> Bug: 1502781
> Change-Id: Ie36d8ed8f431afa97307030646d3b207bf14cf7a
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5040731
> Commit-Queue: Tony Herre <toprice@chromium.org>
> Reviewed-by: Guido Urdaneta <guidou@chromium.org>
> Reviewed-by: Harald Alvestrand <hta@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1230611}

(cherry picked from commit d99cb7c)

Bug: 1502781
Change-Id: I70b366f375e1b6c8e90567f5c994423fd738c8fa
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5077034
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Commit-Queue: Tony Herre <toprice@chromium.org>
Cr-Original-Commit-Position: refs/heads/main@{#1231330}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5269445
Reviewed-by: Tony Herre <toprice@chromium.org>
Commit-Queue: Richard Yeh <rcy@google.com>
Owners-Override: Richard Yeh <rcy@google.com>
Cr-Commit-Position: refs/branch-heads/6099_225@{#14}
Cr-Branched-From: 6d3cc0d-refs/branch-heads/6099@{#1762}
Cr-Branched-From: e6ee450-refs/heads/main@{#1217362}
aarongable pushed a commit that referenced this pull request Mar 13, 2024
…mmit)

https://chromium.googlesource.com/external/github.com/google/anonymous-tokens.git/+log/d024f05b39e2..321a40ba18a0

Also removes cflags now that the issues causing them have been
addressed.

$ git log d024f05b3..321a40ba1 --date=short --no-merges --format='%ad %ae %s'
2024-03-12 Guss123 fixing tests and bazel versions (#14)

Created with:
  roll-dep src/third_party/anonymous_tokens/src

Bug: 325102878
Change-Id: Ic4377b9f6925dd53e5f8bccde8adf4257e7f2333
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5367306
Reviewed-by: Alex Kallam <aakallam@chromium.org>
Commit-Queue: Andrew Williams <awillia@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1272136}
aarongable pushed a commit that referenced this pull request Mar 19, 2024
Currently, the Docking Promo uses the Promos Manager for triggering its
promo display.

It's possible the Docking Promo loses to other promos due to the nature
of the manager's internal impression limits and scheduling logic.

The Docking Promo is important enough to warrant hard-coded sort logic
inside the manager.

This change introduces that logic.

Change-Id: Ib621a089fb2c37032784ede54aaf6fac94dfb0cc
Bug: 330368525
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5381557
Commit-Queue: Benjamin Williams <bwwilliams@google.com>
Reviewed-by: Robbie Gibson <rkgibson@google.com>
Cr-Commit-Position: refs/branch-heads/6367@{#14}
Cr-Branched-From: d158c6d-refs/heads/main@{#1274542}
NaaeemMalik pushed a commit to SoftwarePrince/Egon-Chromium that referenced this pull request Mar 22, 2024
https://chromium.googlesource.com/v8/v8.git/+log/fe608691065e..69685db936e8

2023-08-09 v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com Version 11.7.439.2
2023-08-09 mfarazma@redhat.com Merged: PPC/s390: [compiler] Generalize InstructionSelectorT for Turboshaft (part 10)
2023-08-08 v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com Version 11.7.439.1

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/v8-11-7-chromium-m117
Please CC liviurau@google.com,v8-waterfall-sheriff@grotations.appspotmail.com,vahl@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in v8 11.7: https://bugs.chromium.org/p/v8/issues/entry
To file a bug in Chromium m117: https://bugs.chromium.org/p/chromium/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Bug: None
Tbr: v8-waterfall-sheriff@grotations.appspotmail.com
Change-Id: Id31840e10ce9654529d233d2e929db82df822e11
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4766639
Commit-Queue: Chrome Release Autoroll <chromium-release-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: Chrome Release Autoroll <chromium-release-autoroll@skia-public.iam.gserviceaccount.com>
Cr-Commit-Position: refs/branch-heads/5938@{chromium#14}
Cr-Branched-From: 2b50cb4-refs/heads/main@{#1181205}
NaaeemMalik pushed a commit to SoftwarePrince/Egon-Chromium that referenced this pull request Mar 22, 2024
A general optimization for Chrome was landed in CL:4687538, which
invalidated cached values individual nodes rather than the entire
document, for small changes and updates to the layout and DOM.

However, aria-hidden changes require entire subtrees to be invalidated.
There are a couple of approaches that could work. The one taken
in the landing of CL:4687538 was to attempt to iterate the tree
while invalidating the objects. However, this led to an infinite
loop as invalidating cached objects affects tree walking.

A simpler approach is to reuse another method that works well,
RemoveSubtreeWhenSafe(). This wipes out the entire aria-hidden
subtree of AXObjects and recreates it. As aria-hidden is not
expected to change very often, this is believed to be performant
enough. In addition, this results in being able to remove
InvalidateCachedValuesOnSubtree() from the codebase, resulting
in simpler, cleaner code.

Fixed: 1484425
Change-Id: I9dbe8cfb606e01f9a43d7d5150c9f7999cff543b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4879799
Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
Commit-Queue: Aaron Leventhal <aleventhal@chromium.org>
Owners-Override: Prudhvikumar Bommana <pbommana@google.com>
Reviewed-by: Prudhvikumar Bommana <pbommana@google.com>
Cr-Commit-Position: refs/branch-heads/5938_62@{chromium#14}
Cr-Branched-From: 25a7172-refs/branch-heads/5938@{#1146}
Cr-Branched-From: 2b50cb4-refs/heads/main@{#1181205}
aarongable pushed a commit that referenced this pull request Apr 2, 2024
While investigating a black stripe that appears on the right border
of a lacros window while it is been resized horizontally from the
opposite border (left), it was figured that depending on the values
of the window `origin`, `size` and `scale factor`, the black line was
appearing or hidden.
A continuous interactive window resize is the perfect scenario to
replicate the bug intermittently, and give users the impression of
a flashing black line.

As an easy way to illustrate the issue, lets assume a lacros window
with the following bounds in DIPS, `330,0 596x664`, and a device scale
factor of  `1.62574` - these values can replicate the problem of the
vertical stripe appearing even without triggering a window resize.
For instance, this bounds in DIPS becomes `536,0 970x1080` in pixels
using DesktopWindowTreeHostPlatform::ConvertRectToPixels().

1.1) During the window creation, the `ui::Compositor` instance gets
its scale factor and size set in pixels.
It happens when `Compositor::SetScaleAndSize()` is called.
This is the stracktrace:
  ````
  #1 0x592718b9d713 base::debug::StackTrace::StackTrace()
  #2 0x5927205f4655 ui::Compositor::SetScaleAndSize()
  #3 0x5927205eac3e aura::WindowTreeHost::UpdateCompositorScaleAndSize()
  #4 0x5927205ec714 aura::WindowTreeHost::OnHostResizedInPixels()
  #5 0x592721d2dc2e aura::WindowTreeHostPlatform::OnBoundsChanged()
  #6 0x592721d2cc40 views::DesktopWindowTreeHostLacros::OnBoundsChanged()
  #7 0x592721d2e1b9 aura::WindowTreeHostPlatform::OnStateUpdate()
  #8 0x592719b83731 ui::WaylandWindow::MaybeApplyLatestStateRequest()
  #9 0x592719b83074 ui::WaylandWindow::RequestState()
  #10 0x592719b7e189 ui::WaylandWindow::SetWindowScale()
  #11 0x592719b7d985 ui::WaylandWindow::UpdateWindowScale()
  #12 0x592719b789ad ui::WaylandToplevelWindow::UpdateWindowScale()
  #13 0x592719b77f15 ui::WaylandToplevelWindow::Show()
  #14 0x592721d3139d views::DesktopWindowTreeHostPlatform::Show()
  #15 0x592721d18b24 views::DesktopNativeWidgetAura::Show()
  #16 0x592721cd0a7c views::Widget::Show()
  #17 0x592724d06ffb BrowserView::Show()
  (...)
  ````
In practice, `aura::WindowTreeHostPlatform::OnBoundsChanged()`
(frame #4) calls out to `WaylandWindow::GetBoundsInPixels()`,
that translates `330,0 596x664` in DIPS to `536,0 970x1080`
in pixels - see the method below.
Ultimately, only the size is set to the ui::Compositor instance,
ie `970x1080`.

  ````
  void WindowTreeHostPlatform::OnBoundsChanged(const BoundsChange& change) {
    (...)
    float current_scale = compositor()->device_scale_factor();
    float new_scale = ui::GetScaleFactorForNativeView(window());
    auto weak_ref = GetWeakPtr();
    auto new_size = GetBoundsInPixels().size(); <------
  `````

1.2) Meanwhile, `cc::Layer` instances for the window are also being
created. During the layer tree creation, the layers' bounds are all
set in DIPs.
For instance, the root layer is created with an origin of `0,0` and
bounds `596x664`, eg:

  ````
  2024-03-11T18:42:45.387311Z WARNING chrome[29500:29500]: [layer.cc(390)]
  #0 0x59271e998ce2 base::debug::CollectStackTrace()
  #1 0x592718b9d713 base::debug::StackTrace::StackTrace()
  #2 0x592725cc29d7 cc::Layer::SetBounds()
  #3 0x592725e2ee96 ui::Layer::SetBoundsFromAnimation()
  #4 0x5927265c0177 ui::LayerAnimator::SetBounds()
  #5 0x5927205d8fe0 aura::Window::SetBoundsInternal()
  #6 0x5927205d8f67 aura::Window::SetBounds()
  #7 0x5927205ea78e aura::WindowTreeHost::UpdateRootWindowSize()
  #8 0x5927205ea6df aura::WindowTreeHost::InitHost()
  #9 0x592721d30b36 views::DesktopWindowTreeHostPlatform::Init()
  #10 0x592721d16336 views::DesktopNativeWidgetAura::InitNativeWidget()
  #11 0x592725142c44 DesktopBrowserFrameAura::InitNativeWidget()
  #12 0x592721ccdd41 views::Widget::Init()
  #13 0x592724cf68af BrowserFrame::InitBrowserFrame()
  #14 0x592724db9f30 BrowserWindow::CreateBrowserWindow()
  #15 0x592724951ce0 Browser::Browser()
  #16 0x5927249511c6 Browser::Create()
  (...)
  ````
The layers' bounds get translated at places like
`draw_property_utils.cc` `ComputeLocalRectInTargetSpace()`, with
MathUtils::MapXXX() functions.
In practice, `596x664` translates to `968.942x1079.49`, and finally
gets rounded to `969x1080`.
Hence, we have a root ui::Compositor size of 970x1080 and a root
cc:Layer bounds of 969x1080.

Using the visual debugger tool attached to lacros, one can see that
all window-wide tiles's width are 969 [1].
OTOH, with the visual debugger tool attached to ash/chrome, we can
see that the width the the root surface (lacros) is 970 [2].
This 1px different creates a "punch role" effect in the lacros window,
and user sees whatever is underneath it rendered [3]. In the case of
this bug, what the user sees is a trailing 1px wide line part of
the so called "resize shadow".
The user sees it through this unintentionally "punch hole" explained
above.

This CL changes the way PlatformWindowDelegate::State::size_px
variable gets set in WaylandWindow::RequestState(), translating only
its size from DIPs to pixels. This way we match how this variable is
used in ui::Compositor level and cc::Layers et al (tiles, quads,
overlayers, etc).

As a way to illustrate the problem, see video [4]. It forcibly paints
the 1px lacros root layer transparent buffer red with viz_debugger,
so  one can clearly see it "flashing" due to the rounding error
being fixed here.

[1] https://issues.chromium.org/u/0/action/issues/40876438/attachments/54873934
[2] https://issues.chromium.org/u/0/action/issues/40876438/attachments/54878944
[3] https://issues.chromium.org/u/0/action/issues/40876438/attachments/54873933
[4] https://issues.chromium.org/action/issues/40876438/attachments/54936907

Bug: 40876438
Change-Id: Id36476d41e7a2c90f8a44337731a4cfad93e6a13
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5384752
Reviewed-by: Maksim Sisov <msisov@igalia.com>
Commit-Queue: Antonio Gomes <tonikitoo@igalia.com>
Cr-Commit-Position: refs/heads/main@{#1281135}
aarongable pushed a commit that referenced this pull request Apr 10, 2024
This is part of the work to get cast on starboard building out of
chromium. See go/moving-cwr-to-chromium for more information on the
high-level goal.

This is the crash that occurs without this CL:
FATAL:event_factory_evdev.cc(247)] Check failed: user_input_task_runner_.
#0 0x5643c4c23ed2 base::debug::CollectStackTrace() [../../base/debug/stack_trace_posix.cc:1039:7]
#1 0x5643c4c0dc62 base::debug::StackTrace::StackTrace() [../../base/debug/stack_trace.cc:229:20]
#2 0x5643c4b15369 logging::LogMessage::Flush() [../../base/logging.cc:703:29]
#3 0x5643c4b1524d logging::LogMessage::~LogMessage() [../../base/logging.cc:694:3]
#4 0x5643c4afb6bf logging::(anonymous namespace)::DCheckLogMessage::~DCheckLogMessage() [../../base/check.cc:166:3]
#5 0x5643c4afb71e logging::(anonymous namespace)::DCheckLogMessage::~DCheckLogMessage() [../../base/check.cc:161:32]
#6 0x5643c4afb173 logging::CheckError::~CheckError() [../../third_party/libc++/src/include/__memory/unique_ptr.h:67:5]
#7 0x5643c611fca5 ui::EventFactoryEvdev::Init() [../../ui/events/ozone/evdev/event_factory_evdev.cc:247:3]
#8 0x5643c5f275f7 ui::PlatformEventSource::AddPlatformEventDispatcher() [../../ui/events/platform/platform_event_source.cc:54:3]
#9 0x5643c11edb81 ui::(anonymous namespace)::OzonePlatformCast::CreatePlatformWindow() [../../third_party/libc++/src/include/__memory/unique_ptr.h:620:30]
#10 0x5643c67cf017 aura::WindowTreeHostPlatform::CreatePlatformWindow() [../../ui/aura/window_tree_host_platform.cc:222:44]
#11 0x5643c67cef76 aura::WindowTreeHostPlatform::CreateAndSetPlatformWindow() [../../ui/aura/window_tree_host_platform.cc:93:22]
#12 0x5643c67cef2a aura::WindowTreeHostPlatform::WindowTreeHostPlatform() [../../ui/aura/window_tree_host_platform.cc:71:3]
#13 0x5643c24eb8d1 chromecast::CastWindowTreeHostAura::CastWindowTreeHostAura() [../../chromecast/graphics/cast_window_tree_host_aura.cc:17:7]
#14 0x5643c24e937e chromecast::CastWindowManagerAura::Setup() [../../third_party/libc++/src/include/__memory/unique_ptr.h:620:30]
#15 0x5643c24a324d chromecast::shell::CastBrowserMainParts::PreMainMessageLoopRun() [../../chromecast/browser/cast_browser_main_parts.cc:627:20]

Bug: b/333571227
Change-Id: I7fd21eec0708282fc14d1b6dd578032ba06187c9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5439606
Reviewed-by: Luke Halliwell <halliwell@chromium.org>
Reviewed-by: Yuchen Liu <yucliu@chromium.org>
Commit-Queue: Antonio Rivera <antoniori@google.com>
Cr-Commit-Position: refs/heads/main@{#1285202}
aarongable pushed a commit that referenced this pull request Apr 16, 2024
Change-Id: I648819b017fba9e2a67e08fabe3249349245e647
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5459312
Bot-Commit: Chrome Release Bot (LUCI) <chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com>
Cr-Commit-Position: refs/branch-heads/6422@{#14}
Cr-Branched-From: 9012208-refs/heads/main@{#1287751}
aarongable pushed a commit that referenced this pull request Apr 19, 2024
Example builder failure: https://ci.chromium.org/ui/p/chromium/builders/ci/Linux%20Tests%20(dbg)(1)/119860/overview.

crash log for renderer (pid <unknown>):
STDOUT: <empty>
STDERR: [840814:1:0419/092311.735189:FATAL:ax_object.cc(3129)] Check failed: !IsDetached().
STDERR: #0 0x7f57ed36492c base::debug::CollectStackTrace() [../../base/debug/stack_trace_posix.cc:1039:7]
STDERR: #1 0x7f57ed316545 base::debug::StackTrace::StackTrace() [../../base/debug/stack_trace.cc:236:20]
STDERR: #2 0x7f57ed3164d5 base::debug::StackTrace::StackTrace() [../../base/debug/stack_trace.cc:231:28]
STDERR: #3 0x7f57ed0349bf logging::LogMessage::Flush() [../../base/logging.cc:710:29]
STDERR: #4 0x7f57ed0348e7 logging::LogMessage::~LogMessage() [../../base/logging.cc:698:3]
STDERR: #5 0x7f57ecfdbfc5 logging::(anonymous namespace)::DCheckLogMessage::~DCheckLogMessage() [../../base/check.cc:166:3]
STDERR: #6 0x7f57ecfdbfe9 logging::(anonymous namespace)::DCheckLogMessage::~DCheckLogMessage() [../../base/check.cc:161:32]
STDERR: #7 0x7f57ecfdcdcc std::__Cr::default_delete<>::operator()() [../../third_party/libc++/src/include/__memory/unique_ptr.h:67:5]
STDERR: #8 0x7f57ecfdc32a std::__Cr::unique_ptr<>::reset() [../../third_party/libc++/src/include/__memory/unique_ptr.h:278:7]
STDERR: #9 0x7f57ecfdb90d logging::CheckError::~CheckError() [../../base/check.cc:349:16]
STDERR: #10 0x7f57bb3ae68b blink::AXObject::IsIncludedInTree() [../../third_party/blink/renderer/modules/accessibility/ax_object.cc:3129:3]
STDERR: #11 0x7f57bb3a43a4 blink::AXObject::ToString() [../../third_party/blink/renderer/modules/accessibility/ax_object.cc:8108:30]
STDERR: #12 0x7f57bb3a2a52 blink::AXObject::Detach() [../../third_party/blink/renderer/modules/accessibility/ax_object.cc:782:35]
STDERR: #13 0x7f57bb3556e6 blink::AXNodeObject::Detach() [../../third_party/blink/renderer/modules/accessibility/ax_node_object.cc:2377:13]
STDERR: #14 0x7f57bb3ec319 blink::AXObjectCacheImpl::Remove()
....

Bug: 40933623
Change-Id: Ic447ade12398f7666c4f6f4def61c2e3723feb43
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5466669
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Liviu Tinta <liviutinta@chromium.org>
Auto-Submit: Liviu Tinta <liviutinta@chromium.org>
Owners-Override: Liviu Tinta <liviutinta@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1290248}
aarongable pushed a commit that referenced this pull request Apr 22, 2024
This reverts commit 6578c4f.

Reason for revert: Offending DCHECK was fixed and removed with
https://crrev.com/c/5464203. Tests can probably be re-enabled.

Original change's description:
> [Gardener] Disable tests failing !IsDetached check
>
> Example builder failure: https://ci.chromium.org/ui/p/chromium/builders/ci/Linux%20Tests%20(dbg)(1)/119860/overview.
>
> crash log for renderer (pid <unknown>):
> STDOUT: <empty>
> STDERR: [840814:1:0419/092311.735189:FATAL:ax_object.cc(3129)] Check failed: !IsDetached().
> STDERR: #0 0x7f57ed36492c base::debug::CollectStackTrace() [../../base/debug/stack_trace_posix.cc:1039:7]
> STDERR: #1 0x7f57ed316545 base::debug::StackTrace::StackTrace() [../../base/debug/stack_trace.cc:236:20]
> STDERR: #2 0x7f57ed3164d5 base::debug::StackTrace::StackTrace() [../../base/debug/stack_trace.cc:231:28]
> STDERR: #3 0x7f57ed0349bf logging::LogMessage::Flush() [../../base/logging.cc:710:29]
> STDERR: #4 0x7f57ed0348e7 logging::LogMessage::~LogMessage() [../../base/logging.cc:698:3]
> STDERR: #5 0x7f57ecfdbfc5 logging::(anonymous namespace)::DCheckLogMessage::~DCheckLogMessage() [../../base/check.cc:166:3]
> STDERR: #6 0x7f57ecfdbfe9 logging::(anonymous namespace)::DCheckLogMessage::~DCheckLogMessage() [../../base/check.cc:161:32]
> STDERR: #7 0x7f57ecfdcdcc std::__Cr::default_delete<>::operator()() [../../third_party/libc++/src/include/__memory/unique_ptr.h:67:5]
> STDERR: #8 0x7f57ecfdc32a std::__Cr::unique_ptr<>::reset() [../../third_party/libc++/src/include/__memory/unique_ptr.h:278:7]
> STDERR: #9 0x7f57ecfdb90d logging::CheckError::~CheckError() [../../base/check.cc:349:16]
> STDERR: #10 0x7f57bb3ae68b blink::AXObject::IsIncludedInTree() [../../third_party/blink/renderer/modules/accessibility/ax_object.cc:3129:3]
> STDERR: #11 0x7f57bb3a43a4 blink::AXObject::ToString() [../../third_party/blink/renderer/modules/accessibility/ax_object.cc:8108:30]
> STDERR: #12 0x7f57bb3a2a52 blink::AXObject::Detach() [../../third_party/blink/renderer/modules/accessibility/ax_object.cc:782:35]
> STDERR: #13 0x7f57bb3556e6 blink::AXNodeObject::Detach() [../../third_party/blink/renderer/modules/accessibility/ax_node_object.cc:2377:13]
> STDERR: #14 0x7f57bb3ec319 blink::AXObjectCacheImpl::Remove()
> ....
>
> Bug: 40933623
> Change-Id: Ic447ade12398f7666c4f6f4def61c2e3723feb43
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5466669
> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> Reviewed-by: Liviu Tinta <liviutinta@chromium.org>
> Auto-Submit: Liviu Tinta <liviutinta@chromium.org>
> Owners-Override: Liviu Tinta <liviutinta@chromium.org>
> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> Cr-Commit-Position: refs/heads/main@{#1290248}

Bug: 40933623
Change-Id: Ib77c888c8c8a1209a18ddd93f7c07d17c50a04a5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5465688
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Simon Zünd <szuend@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1290555}
aarongable pushed a commit that referenced this pull request May 2, 2024
Change-Id: I889e3322ee03127bff9b52bc87bb9088a6355b7b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5513522
Bot-Commit: Chrome Release Bot (LUCI) <chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com>
Cr-Commit-Position: refs/branch-heads/6452@{#14}
Cr-Branched-From: dc6e5f1-refs/heads/main@{#1294836}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants