From 84b88d69f800fb62af19f281fb7ab9bd1574c31a Mon Sep 17 00:00:00 2001 From: Vankka Date: Sat, 11 May 2024 15:07:51 +0300 Subject: [PATCH] Fix unknown message stacktrace loop in console Closes https://github.com/Scarsz/JDAAppender/pull/21 Fixes https://github.com/Scarsz/JDAAppender/issues/18 --- .../me/scarsz/jdaappender/ChannelLoggingHandler.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/jda4/src/main/java/me/scarsz/jdaappender/ChannelLoggingHandler.java b/jda4/src/main/java/me/scarsz/jdaappender/ChannelLoggingHandler.java index d4c5dbb..a03df0e 100644 --- a/jda4/src/main/java/me/scarsz/jdaappender/ChannelLoggingHandler.java +++ b/jda4/src/main/java/me/scarsz/jdaappender/ChannelLoggingHandler.java @@ -239,14 +239,14 @@ private Message updateMessage() throws IllegalStateException { if (currentMessage != null) { try { return currentMessage.editMessage(full).submit().get(); - } catch (ErrorResponseException e) { - if (e.getErrorResponse() == ErrorResponse.UNKNOWN_MESSAGE) { + } catch (ExecutionException e) { + Throwable cause = e.getCause(); + if (cause instanceof ErrorResponseException + && ((ErrorResponseException) cause).getErrorResponse() == ErrorResponse.UNKNOWN_MESSAGE) { currentMessage = null; } else { - throw e; + throw new RuntimeException(cause); } - } catch (ExecutionException e) { - throw new RuntimeException(e); } catch (InterruptedException e) { JDA.Status status = channel.getJDA().getStatus(); if (status == JDA.Status.SHUTTING_DOWN || status == JDA.Status.SHUTDOWN) {