I was just given the “solution” to a problem I have been trying to work around. Our library catalog has a scripting language of sorts that allows you to do a lot of great things. Unfortunately, it also has a nasty logic flaw that I have discovered.
Value 1 | Operator | Value 2 | Result |
“A” | = | “a” | TRUE |
“a” | = | “A” | FALSE |
“a” | = | “a” | TRUE |
“A” | = | “A” | FALSE |
I realize, internally the programmers decided to automatically lowercase all input fed to the comparison on the left side. The problem is, there is no function to lowercase a variable. So, If I save the value of some function, say “LibraryName” someplace, and then try to compare it later… I run into “Aurora” = “Aurora” equating to FALSE because what is really being compared internally is: “aurora” and “Aurora”…
GRRRR….