>We discussed this, but if you give the RectangleList garbage coordinates, it's not clear what you expect it to do with them.
Well anything, but not to crash the entire application ;)
This is all under the special aspect how float-values behave, under different circumstances or different architectures, this might not crash, the developer has no chance to see the problem. And we all make mistakes!
Yes we can call it undefined behavior, but if you look how many classes RectangleList are using, and in the end how many other classes trust RectangleList, and classes who trust this classes, for my taste that's much too undefined behavior, did you check them all?
I don't like undefined behavior, sometimes unavoidable of cause, bit it should not used as a "tool".
And since when this is an undefined behavior, since your last commit!
If this software would be security relevant, it would be a nightmare. Crashing is perfect! But with an defined exception, and not with a random access to memory.
But if its crash, its better with to crash with a defined exception, and not with a random memory access, in terms of security.
Sorry, enough moralizing... ;-)