Bug 1872787 change non-fatal MediaTrackGraph shutdown assertion to MOZ_DIAGNOSTIC_ASSERT r=padenot

If the graph leaks because it does not shut down its driver, then an nsThread
can be leaked and block shutdown at nsThreadManager::ShutdownNonMainThreads().
The shutdown blocker has better debug messages to identify the source of the
blockage than ShutdownNonMainThreads(), so I'd like to remove
MediaTrackGraph's code that removes it's shutdown blocker after a timeout.
This new assert is intended to give some visibility into how many problems
such removal might cause.

Depends on D198769

Differential Revision: https://phabricator.services.mozilla.com/D198770
This commit is contained in:
Karl Tomlinson 2024-01-18 02:03:23 +00:00
Родитель 05d687e038
Коммит 3643d41bc4
1 изменённых файлов: 2 добавлений и 2 удалений

Просмотреть файл

@ -1712,8 +1712,8 @@ void MediaTrackGraphImpl::ForceShutDown() {
NS_IMETHODIMP
MediaTrackGraphImpl::Notify(nsITimer* aTimer) {
MOZ_ASSERT(NS_IsMainThread());
NS_ASSERTION(!mShutdownBlocker,
"MediaTrackGraph took too long to shut down!");
MOZ_DIAGNOSTIC_ASSERT(!mShutdownBlocker,
"MediaTrackGraph took too long to shut down!");
// Sigh, graph took too long to shut down. Stop blocking system
// shutdown and hope all is well.
RemoveShutdownBlocker();