This took me quite some time today, and I finaly found the cause, but still don't get the logic
x = (complex expression evaluating to false) or (complex expression evaluating to true)
x => false
Very strange... It turns out, after experimenting that
false or true => false
true or false => true
false || true => true
true || false => true
I guess I've used the "or" operator in hundreds of places in my code, and honestly speaking, I don't trust the "or" anymore...
Can someone please explain the "logic"?