Index: gpu/command_buffer/service/in_process_command_buffer.cc |
diff --git a/gpu/command_buffer/service/in_process_command_buffer.cc b/gpu/command_buffer/service/in_process_command_buffer.cc |
index 1d0ce6a8246e4e6c66d448b198d186be02043922..310fcedcccb18385bb1b7c84d57f8ddb545c0f3f 100644 |
--- a/gpu/command_buffer/service/in_process_command_buffer.cc |
+++ b/gpu/command_buffer/service/in_process_command_buffer.cc |
@@ -747,7 +747,9 @@ namespace { |
void PostCallback(const scoped_refptr<base::MessageLoopProxy>& loop, |
const base::Closure& callback) { |
- if (!loop->BelongsToCurrentThread()) { |
+ // The loop.get() check is to support using InProcessCommandBuffer on a thread |
+ // without a message loop. |
+ if (loop.get() && !loop->BelongsToCurrentThread()) { |
loop->PostTask(FROM_HERE, callback); |
} else { |
callback.Run(); |