Procedural Generation: Building conditions

Good day forum users,

I have ran into an issue where I cannot get this loop to break once I run my level. I have another version where I manually compare each value, but it is inefficient, and could theoretically keep rerolling locations forever.

Anyways, I know my logic is flawed somewhere here, but I cant quite place it. I would appreciate any feedback, or help anyone can provide. Here is the code and an example of what what the code does.

Code:

What Happens: