diff --git a/src/cryptonote_core/hardfork.cpp b/src/cryptonote_core/hardfork.cpp
index 2a2e25635..550047289 100644
--- a/src/cryptonote_core/hardfork.cpp
+++ b/src/cryptonote_core/hardfork.cpp
@@ -105,6 +105,7 @@ uint8_t HardFork::get_effective_version(uint8_t voting_version) const
 bool HardFork::do_check(uint8_t block_version, uint8_t voting_version) const
 {
   return block_version >= heights[current_fork_index].version
+      && block_version <= get_ideal_version()
       && voting_version >= heights[current_fork_index].version;
 }