Já už podobné chyby viděl. Zdrojem je fakt, že programátor zadaný text prožene funkcí trim a výsledek použije v podmínce. V řadě databázových implementací pokud trim dostane jen text s mezerami, tak vrací null a nikoliv prázdný řetězec.
Nevěřil byste kolik programátorů pracujících s SQL a podobnými technologiemi netuší, co je výsledkem "IF a != b" pokud je jedno z toho null. Už několikrát se mi stalo, že mi nový kolega ukazoval kus kódu, který se nespustil ani s podmínkou rovno, ani s nerovno, a on nechápal proč. No prostě proto, že podmínka s null není nikdy rovno ani nerovno, jejím výsledkem je také null.