diff --git a/src/f_wipe.c b/src/f_wipe.c
index 5fdc0f455625ea0a4261ac17a04c4a7d963f501c..166eb11e4aa04f6df267d62d45cdc57ac3dc011c 100644
--- a/src/f_wipe.c
+++ b/src/f_wipe.c
@@ -495,7 +495,7 @@ void ScreenWipe_StartParametrized(wipe_t *wipe)
 		paldiv = FixedDiv(257<<FRACBITS, 11<<FRACBITS);
 #endif
 
-	if (wipe_numqueued >= WIPEQUEUESIZE || wipe->type == UINT8_MAX)
+	if (dedicated || wipe_numqueued >= WIPEQUEUESIZE || wipe->type == UINT8_MAX)
 	{
 		// Can't queue it, but its callback has to run.
 		if (wipe->callback)