зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1065881 - [e10s] Crash on child process shutdown in ShadowLayerForwarder::InWorkerThread
Had caused a crash in the test_streams_element_capture mochitest on Windows. The issue was that the audio decoder thread was destroying stale media frames by releasing a reference to them. This was causing the release of an Image on that thread, but that thread does not process a MessageLoop so the current MessageLoop is null. This is not a problem. Obviously, any thread that has no MessageLoop can't be the worker thread.
This commit is contained in:
Родитель
f00e2738a4
Коммит
faf8b8adce
|
@ -460,7 +460,6 @@ skip-if = true # bug 1021673
|
|||
[test_standalone.html]
|
||||
[test_streams_autoplay.html]
|
||||
[test_streams_element_capture.html]
|
||||
skip-if = e10s && os == 'win' # Bug 1065881 - Crash on child process shutdown in ShadowLayerForwarder::InWorkerThread
|
||||
[test_streams_element_capture_createObjectURL.html]
|
||||
[test_streams_element_capture_playback.html]
|
||||
[test_streams_element_capture_reset.html]
|
||||
|
|
|
@ -494,7 +494,7 @@ ShadowLayerForwarder::RemoveTextureFromCompositableAsync(AsyncTransactionTracker
|
|||
bool
|
||||
ShadowLayerForwarder::InWorkerThread()
|
||||
{
|
||||
return GetMessageLoop()->id() == MessageLoop::current()->id();
|
||||
return MessageLoop::current() && (GetMessageLoop()->id() == MessageLoop::current()->id());
|
||||
}
|
||||
|
||||
static void RemoveTextureWorker(TextureClient* aTexture, ReentrantMonitor* aBarrier, bool* aDone)
|
||||
|
|
Загрузка…
Ссылка в новой задаче