From 5672701a60c692bed441b34e29039ed0fbf1e1ed Mon Sep 17 00:00:00 2001 From: Moxie Marlinspike Date: Fri, 2 Jun 2017 09:49:44 -0700 Subject: [PATCH] Add uncaught exception handler to message retrieval thread Related #6644 // FREEBIE --- .../securesms/service/MessageRetrievalService.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/org/thoughtcrime/securesms/service/MessageRetrievalService.java b/src/org/thoughtcrime/securesms/service/MessageRetrievalService.java index 7d7ad0b0f2..4cbcdd1933 100644 --- a/src/org/thoughtcrime/securesms/service/MessageRetrievalService.java +++ b/src/org/thoughtcrime/securesms/service/MessageRetrievalService.java @@ -182,10 +182,14 @@ public class MessageRetrievalService extends Service implements InjectableType, return pipe; } - private class MessageRetrievalThread extends Thread { + private class MessageRetrievalThread extends Thread implements Thread.UncaughtExceptionHandler { private AtomicBoolean stopThread = new AtomicBoolean(false); + MessageRetrievalThread() { + setUncaughtExceptionHandler(this); + } + @Override public void run() { while (!stopThread.get()) { @@ -235,5 +239,11 @@ public class MessageRetrievalService extends Service implements InjectableType, public void stopThread() { stopThread.set(true); } + + @Override + public void uncaughtException(Thread t, Throwable e) { + Log.w(TAG, "*** Uncaught exception!"); + Log.w(TAG, e); + } } }