Index: base/android/java_handler_thread.cc |
diff --git a/base/android/java_handler_thread.cc b/base/android/java_handler_thread.cc |
index 75270348e6ee15756daa12faf09303d53b5b903a..ed5cb95f21babe8da0c9e33e98d6f70d377960b5 100644 |
--- a/base/android/java_handler_thread.cc |
+++ b/base/android/java_handler_thread.cc |
@@ -35,8 +35,7 @@ void JavaHandlerThread::Start() { |
base::WaitableEvent initialize_event( |
WaitableEvent::ResetPolicy::AUTOMATIC, |
WaitableEvent::InitialState::NOT_SIGNALED); |
- Java_JavaHandlerThread_start(env, |
- java_thread_.obj(), |
+ Java_JavaHandlerThread_start(env, java_thread_.obj(), |
reinterpret_cast<intptr_t>(this), |
reinterpret_cast<intptr_t>(&initialize_event)); |
// Wait for thread to be initialized so it is ready to be used when Start |
@@ -63,17 +62,25 @@ void JavaHandlerThread::InitializeThread(JNIEnv* env, |
jlong event) { |
// TYPE_JAVA to get the Android java style message loop. |
message_loop_.reset(new base::MessageLoop(base::MessageLoop::TYPE_JAVA)); |
- static_cast<MessageLoopForUI*>(message_loop_.get())->Start(); |
+ StartMessageLoop(); |
reinterpret_cast<base::WaitableEvent*>(event)->Signal(); |
} |
void JavaHandlerThread::StopThread(JNIEnv* env, |
const JavaParamRef<jobject>& obj, |
jlong event) { |
- static_cast<MessageLoopForUI*>(message_loop_.get())->QuitWhenIdle(); |
+ StopMessageLoop(); |
reinterpret_cast<base::WaitableEvent*>(event)->Signal(); |
} |
+void JavaHandlerThread::StartMessageLoop() { |
+ static_cast<MessageLoopForUI*>(message_loop_.get())->Start(); |
+} |
+ |
+void JavaHandlerThread::StopMessageLoop() { |
+ static_cast<MessageLoopForUI*>(message_loop_.get())->QuitWhenIdle(); |
+} |
+ |
// static |
bool JavaHandlerThread::RegisterBindings(JNIEnv* env) { |
return RegisterNativesImpl(env); |