| Index: remoting/client/jni/jni_display_handler.cc
|
| diff --git a/remoting/client/jni/jni_display_handler.cc b/remoting/client/jni/jni_display_handler.cc
|
| index 185a9724069b1e509db00a1c43766f08381413c5..20e278f04ed6259975ac8f6774302091ce4765c0 100644
|
| --- a/remoting/client/jni/jni_display_handler.cc
|
| +++ b/remoting/client/jni/jni_display_handler.cc
|
| @@ -55,6 +55,7 @@ void DisplayCursorShapeStub::SetCursorShape(
|
| JniDisplayHandler::JniDisplayHandler(ChromotingJniRuntime* runtime)
|
| : runtime_(runtime),
|
| weak_factory_(this) {
|
| + weak_ptr_ = weak_factory_.GetWeakPtr();
|
| JNIEnv* env = base::android::AttachCurrentThread();
|
| java_display_.Reset(Java_Display_createJavaDisplayObject(
|
| env, reinterpret_cast<intptr_t>(this)));
|
| @@ -95,14 +96,13 @@ void JniDisplayHandler::UpdateCursorShape(
|
| std::unique_ptr<protocol::CursorShapeStub>
|
| JniDisplayHandler::CreateCursorShapeStub() {
|
| return base::WrapUnique(
|
| - new DisplayCursorShapeStub(weak_factory_.GetWeakPtr(),
|
| - runtime_->display_task_runner()));
|
| + new DisplayCursorShapeStub(weak_ptr_, runtime_->display_task_runner()));
|
| }
|
|
|
| std::unique_ptr<protocol::VideoRenderer>
|
| JniDisplayHandler::CreateVideoRenderer() {
|
| return base::WrapUnique(
|
| - new JniVideoRenderer(runtime_, weak_factory_.GetWeakPtr()));
|
| + new JniVideoRenderer(runtime_, weak_ptr_));
|
| }
|
|
|
| // static
|
| @@ -137,8 +137,7 @@ void JniDisplayHandler::ScheduleRedraw(
|
| JNIEnv* env,
|
| const base::android::JavaParamRef<jobject>& caller) {
|
| runtime_->display_task_runner()->PostTask(
|
| - FROM_HERE, base::Bind(&JniDisplayHandler::RedrawCanvas,
|
| - weak_factory_.GetWeakPtr()));
|
| + FROM_HERE, base::Bind(&JniDisplayHandler::RedrawCanvas, weak_ptr_));
|
| }
|
|
|
| } // namespace remoting
|
|
|