Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2037)

Unified Diff: blimp/client/core/compositor/blimp_compositor_dependencies.cc

Issue 2320923002: Add a full Blimp integration test. (Closed)
Patch Set: Fix build break with chrome embedder Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: blimp/client/core/compositor/blimp_compositor_dependencies.cc
diff --git a/blimp/client/core/compositor/blimp_compositor_dependencies.cc b/blimp/client/core/compositor/blimp_compositor_dependencies.cc
index a765adbfba8760391aee2775f6e49a39e8bfc869..2a62fc7f31fc8b32021ad57d368128e1ba229c98 100644
--- a/blimp/client/core/compositor/blimp_compositor_dependencies.cc
+++ b/blimp/client/core/compositor/blimp_compositor_dependencies.cc
@@ -9,6 +9,7 @@
#include "base/memory/ptr_util.h"
#include "base/threading/simple_thread.h"
#include "base/threading/thread.h"
+#include "base/threading/thread_restrictions.h"
#include "blimp/client/core/compositor/blob_image_serialization_processor.h"
#include "blimp/client/public/compositor/compositor_dependencies.h"
#include "blimp/client/support/compositor/blimp_layer_tree_settings.h"
@@ -26,7 +27,12 @@ class BlimpTaskGraphRunner : public cc::SingleThreadTaskGraphRunner {
base::SimpleThread::Options(base::ThreadPriority::BACKGROUND));
}
- ~BlimpTaskGraphRunner() override { Shutdown(); }
+ ~BlimpTaskGraphRunner() override {
+ // PlatformThread::Join() ends up relying on IO. Temporarily allow this
+ // during shutdown.
+ base::ThreadRestrictions::ScopedAllowIO allow_io;
+ Shutdown();
+ }
private:
DISALLOW_COPY_AND_ASSIGN(BlimpTaskGraphRunner);
@@ -40,8 +46,12 @@ BlimpCompositorDependencies::BlimpCompositorDependencies(
}
BlimpCompositorDependencies::~BlimpCompositorDependencies() {
- if (compositor_impl_thread_)
+ if (compositor_impl_thread_) {
+ // PlatformThread::Join() ends up relying on IO. Temporarily allow this
+ // during shutdown.
+ base::ThreadRestrictions::ScopedAllowIO allow_io;
compositor_impl_thread_->Stop();
+ }
}
CompositorDependencies* BlimpCompositorDependencies::GetEmbedderDependencies() {
« no previous file with comments | « blimp/client/core/compositor/blimp_compositor.cc ('k') | blimp/client/core/compositor/blimp_compositor_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698