Code had been made re-entrant so that class could be singleton, but the validation list definition had not been moved into the validate method, and hence there was still a chance that two simultaneous calls could affect each other's validation messages. (So not quite 100% re-entrant.) Has now been moved.