The way I have written it this, it is consistant with every other function branch. The concern is that error might get set outside of the top-level "else if", so even if it isn't set to ERR_INVALID_PARAMS it might be set to something that isn't NO_ERROR.