Refactoring: move process_special_conditions() into filesave()
This change moves the call to process_special_conditions() from all callers of filesave() into filesave(). This reduces code duplication and makes it less likely that a new caller will forget to do this.