From beb1ce0e05c2f7377a45b294f7b1aa2c95f84bd7 Mon Sep 17 00:00:00 2001 From: M66B Date: Wed, 8 Jun 2022 16:24:39 +0200 Subject: [PATCH] I/O exceptions can happen --- app/src/main/java/com/sun/mail/pop3/Protocol.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/app/src/main/java/com/sun/mail/pop3/Protocol.java b/app/src/main/java/com/sun/mail/pop3/Protocol.java index 3c13349c26..3ebb31c289 100644 --- a/app/src/main/java/com/sun/mail/pop3/Protocol.java +++ b/app/src/main/java/com/sun/mail/pop3/Protocol.java @@ -486,10 +486,15 @@ class Protocol { doAuth(host, authzid, user, passwd); } catch (IOException ex) { // should never happen, ignore logger.log(Level.FINE, "AUTH " + mech + " failed", ex); + thrown = ex; } catch (Throwable t) { // crypto can't be initialized? logger.log(Level.FINE, "AUTH " + mech + " failed", t); thrown = t; } finally { + if (thrown instanceof IOException) { + close(); + throw (IOException) thrown; + } if (noauthdebug && isTracing()) logger.fine("AUTH " + mech + " " + (resp.ok ? "succeeded" : "failed"));