diff --git a/src/p_user.c b/src/p_user.c
index fbcc17d244f0f9c3ca698d7f7ea95cf3a8bbd01f..02dd77668ac8f1dd01270673b1016ad0763353f3 100644
--- a/src/p_user.c
+++ b/src/p_user.c
@@ -4631,6 +4631,12 @@ static void P_DoSpinAbility(player_t *player, ticcmd_t *cmd)
 						S_StartSound(player->mo, sfx_spin);
 						break;
 					}
+					if (player->dashspeed < player->mindash)
+						player->dashspeed = player->mindash;
+
+					if (player->dashspeed > player->maxdash)
+						player->dashspeed = player->maxdash;
+					
 					if (player->dashspeed < player->maxdash && player->mindash != player->maxdash)
 					{
 #define chargecalculation (6*(player->dashspeed - player->mindash))/(player->maxdash - player->mindash)