Fixed if function behaivour