| Index: base/message_loop/message_pump_android.h
|
| diff --git a/base/message_loop/message_pump_android.h b/base/message_loop/message_pump_android.h
|
| index 795bd5e79ee69569347d3c0c57522c3717c892ee..70f4c1e3b486e22e1647af9498a196eb4b17edb2 100644
|
| --- a/base/message_loop/message_pump_android.h
|
| +++ b/base/message_loop/message_pump_android.h
|
| @@ -31,12 +31,19 @@ class BASE_EXPORT MessagePumpForUI : public MessagePump {
|
| void ScheduleDelayedWork(const TimeTicks& delayed_work_time) override;
|
|
|
| virtual void Start(Delegate* delegate);
|
| + // We call Abort when there is a pending JNI exception, meaning that the
|
| + // current thread will crash when we return to Java.
|
| + // We can't call any jni-methods before returning to Java as we would then
|
| + // cause a native crash (instead of the original Java crash)
|
| + void Abort() { should_abort_ = true; }
|
| + bool ShouldAbort() const { return should_abort_; }
|
|
|
| static bool RegisterBindings(JNIEnv* env);
|
|
|
| private:
|
| RunLoop* run_loop_;
|
| base::android::ScopedJavaGlobalRef<jobject> system_message_handler_obj_;
|
| + bool should_abort_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(MessagePumpForUI);
|
| };
|
|
|