Skip to content

Commit ca85782

Browse files
committed
[commands] Fix Context.defer unconditionally deferring
1 parent 442ad40 commit ca85782

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

discord/ext/commands/context.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87,11 +87,15 @@ def __init__(self, ctx: Context[BotT], *, ephemeral: bool):
8787
self.ctx: Context[BotT] = ctx
8888
self.ephemeral: bool = ephemeral
8989

90+
async def do_defer(self) -> None:
91+
if self.ctx.interaction and not self.ctx.interaction.response.is_done():
92+
await self.ctx.interaction.response.defer(ephemeral=self.ephemeral)
93+
9094
def __await__(self) -> Generator[Any, None, None]:
91-
return self.ctx.defer(ephemeral=self.ephemeral).__await__()
95+
return self.do_defer().__await__()
9296

9397
async def __aenter__(self) -> None:
94-
await self.ctx.defer(ephemeral=self.ephemeral)
98+
await self.do_defer()
9599

96100
async def __aexit__(
97101
self,

0 commit comments

Comments
 (0)