diff --git a/game/engines/default/engine/generator/actor/OnSpots.lua b/game/engines/default/engine/generator/actor/OnSpots.lua
index b7710be7b207d6494059ffb51719cc0e14b64a9a..41933dfde05d2501699c4eac5008fdd0b9167f29 100644
--- a/game/engines/default/engine/generator/actor/OnSpots.lua
+++ b/game/engines/default/engine/generator/actor/OnSpots.lua
@@ -74,7 +74,7 @@ function _M:getSpawnSpot(m)
 			_, _, gs = util.findFreeGrid(spot.x, spot.y, self.spot_radius, "block_move", {[Map.ACTOR]=true})
 			tries = tries + 1
 		end
-		if not gs then
+		if not gs or #gs == 0 then
 			print("No more free space for spawning")
 			break
 		end
diff --git a/game/engines/default/engine/generator/object/OnSpots.lua b/game/engines/default/engine/generator/object/OnSpots.lua
index 5f6c43aceb7ea9119cbb6fb3a4ed381d080d18c1..3c680c895091b97600e3c521acbbc8a80366bad0 100644
--- a/game/engines/default/engine/generator/object/OnSpots.lua
+++ b/game/engines/default/engine/generator/object/OnSpots.lua
@@ -55,7 +55,7 @@ function _M:getSpawnSpot(o)
 			_, _, gs = util.findFreeGrid(spot.x, spot.y, self.spot_radius, "block_move", {[Map.OBJECT]=true})
 			tries = tries + 1
 		end
-		if not gs then
+		if not gs or #gs == 0 then
 			print("No more free space for spawning")
 			return
 		end