diff options
author | Zbigniew Szymański <zbigniew.szymanski@wearezeta.com> | 2014-12-15 15:23:45 +0100 |
---|---|---|
committer | Zbigniew Szymański <zbigniew.szymanski@wearezeta.com> | 2014-12-15 15:23:45 +0100 |
commit | e32c22dc0c6c739a9ac07158d305cb7950a4f146 (patch) | |
tree | 2bd3f1072d6354ab8aa8033571fb8f1598a96bbf /AndroidAsync | |
parent | 683da377b7ecfc187b0d8f1ead969a5a8a80a7d3 (diff) | |
download | AndroidAsync-e32c22dc0c6c739a9ac07158d305cb7950a4f146.tar.gz AndroidAsync-e32c22dc0c6c739a9ac07158d305cb7950a4f146.tar.bz2 AndroidAsync-e32c22dc0c6c739a9ac07158d305cb7950a4f146.zip |
Catch Throwable from socket.connect().
Due to framework bug nio socket connect method may throw AssertionError if socket is already closed on other thread, it would crash the whole app, and should just report an error for this request.
Catching any Throwwable is the easiest work around this problem.
Fixes #282
Diffstat (limited to 'AndroidAsync')
-rw-r--r-- | AndroidAsync/src/com/koushikdutta/async/AsyncServer.java | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/AndroidAsync/src/com/koushikdutta/async/AsyncServer.java b/AndroidAsync/src/com/koushikdutta/async/AsyncServer.java index 1b8ab50..7245d79 100644 --- a/AndroidAsync/src/com/koushikdutta/async/AsyncServer.java +++ b/AndroidAsync/src/com/koushikdutta/async/AsyncServer.java @@ -361,11 +361,11 @@ public class AsyncServer { ckey.attach(cancel); socket.connect(address); } - catch (IOException e) { + catch (Throwable e) { if (ckey != null) ckey.cancel(); StreamUtility.closeQuietly(socket); - cancel.setComplete(e); + cancel.setComplete(new RuntimeException(e)); } } }); |