diff --git a/src/main/java/com/github/kaktushose/jda/commands/dispatching/interactions/modals/ModalDispatcher.java b/src/main/java/com/github/kaktushose/jda/commands/dispatching/interactions/modals/ModalDispatcher.java
index 5991aea7e..26543c542 100644
--- a/src/main/java/com/github/kaktushose/jda/commands/dispatching/interactions/modals/ModalDispatcher.java
+++ b/src/main/java/com/github/kaktushose/jda/commands/dispatching/interactions/modals/ModalDispatcher.java
@@ -79,7 +79,7 @@ public void onEvent(Context context) {
             context.setRuntime(runtime);
             List<Object> arguments = new ArrayList<>();
             arguments.add(new ModalEvent(context));
-            arguments.addAll(event.getValues().stream().map(ModalMapping::getAsString).collect(Collectors.toSet()));
+            arguments.addAll(event.getValues().stream().map(ModalMapping::getAsString).collect(Collectors.toList()));
             modal.getMethod().invoke(runtime.getInstance(), arguments.toArray());
         } catch (Exception exception) {
             log.error("Modal execution failed!", exception);
diff --git a/src/main/java/com/github/kaktushose/jda/commands/dispatching/reply/ReplyContext.java b/src/main/java/com/github/kaktushose/jda/commands/dispatching/reply/ReplyContext.java
index 3ab49278a..940c83d70 100644
--- a/src/main/java/com/github/kaktushose/jda/commands/dispatching/reply/ReplyContext.java
+++ b/src/main/java/com/github/kaktushose/jda/commands/dispatching/reply/ReplyContext.java
@@ -4,6 +4,7 @@
 import com.github.kaktushose.jda.commands.dispatching.interactions.commands.SlashCommandContext;
 import net.dv8tion.jda.api.entities.Message;
 import net.dv8tion.jda.api.events.interaction.GenericInteractionCreateEvent;
+import net.dv8tion.jda.api.events.interaction.ModalInteractionEvent;
 import net.dv8tion.jda.api.interactions.callbacks.IMessageEditCallback;
 import net.dv8tion.jda.api.interactions.callbacks.IReplyCallback;
 import net.dv8tion.jda.api.utils.messages.MessageCreateBuilder;
@@ -216,6 +217,12 @@ private void queueEdit() {
             queueReply();
             return;
         }
+        if (event instanceof ModalInteractionEvent) {
+            if (((ModalInteractionEvent) event).getMessage() == null) {
+                queueReply();
+                return;
+            }
+        }
         if (!event.isAcknowledged()) {
             callback.deferEdit().queue();
         }