Commit be0541ff authored by Xiyuan Xia's avatar Xiyuan Xia Committed by Commit Bot

Revert "cros: Fix ml::UserActivityManager shutdown crash"

This reverts commit 2c8bdfae.

Reason for revert:
https://crrev.com/c/1719447 makes the CL unnecessary.

Original change's description:
> cros: Fix ml::UserActivityManager shutdown crash
> 
> SessionManager is released in PostMainMessageLoopRun that
> happens before PostDestroyThreads. ml::UserActivityManager
> is released with DbusServices PostDestroyThreads. Hence it
> crashes on shutdown when trying to un-observe SessionManager.
> 
> This CL adds a OnSessionManagerDestroyed to SessionManagerObserver
> interface so that ml::UserActivityManager could clean up in time.
> 
> Bug: 987010
> Change-Id: I05043a3e0b946bfb9e733ad476dacc35e9a9a3b6
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1715401
> Reviewed-by: Jia Meng <jiameng@chromium.org>
> Commit-Queue: Xiyuan Xia <xiyuan@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#680197}

TBR=xiyuan@chromium.org,jiameng@chromium.org

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

Bug: 987010
Change-Id: I7fbd5cc8d3e693c7d6b1ceb169d10914040afa17
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1720999Reviewed-by: default avatarXiyuan Xia <xiyuan@chromium.org>
Commit-Queue: Xiyuan Xia <xiyuan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#681436}
parent 81644cdb
......@@ -306,11 +306,6 @@ void UserActivityManager::HandleSmartDimDecision(
std::move(callback).Run(dim_deferred_);
}
void UserActivityManager::OnSessionManagerDestroyed() {
session_manager_observer_.RemoveAll();
session_manager_ = nullptr;
}
void UserActivityManager::OnSessionStateChanged() {
DCHECK(session_manager_);
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
......
......@@ -117,7 +117,6 @@ class UserActivityManager : public ui::UserActivityObserver,
UserActivityEvent::ModelPrediction prediction);
// session_manager::SessionManagerObserver overrides:
void OnSessionManagerDestroyed() override;
void OnSessionStateChanged() override;
private:
......@@ -203,7 +202,7 @@ class UserActivityManager : public ui::UserActivityObserver,
session_manager::SessionManagerObserver>
session_manager_observer_;
session_manager::SessionManager* session_manager_ = nullptr;
session_manager::SessionManager* const session_manager_;
mojo::Binding<viz::mojom::VideoDetectorObserver> binding_;
......
......@@ -24,9 +24,6 @@ SessionManager::SessionManager() {
SessionManager::~SessionManager() {
DCHECK_EQ(instance, this);
SessionManager::SetInstance(nullptr);
for (auto& observer : observers_)
observer.OnSessionManagerDestroyed();
}
// static
......
......@@ -16,9 +16,6 @@ namespace session_manager {
// http://crbug.com/657149.
class SessionManagerObserver : public base::CheckedObserver {
public:
// Inovked when session manager is destroyed.
virtual void OnSessionManagerDestroyed() {}
// Invoked when session state is changed.
virtual void OnSessionStateChanged() {}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment