def cleanup(): from mixer import stats from mixer.share_data import share_data if share_data.current_statistics is not None and share_data.auto_save_statistics: stats.save_statistics(share_data.current_statistics, share_data.statistics_directory) try: if share_data.local_server_process: share_data.local_server_process.kill() except Exception: pass if _disable_fault_handler: faulthandler.disable()
def leave_current_room(): logger.info("leave_current_room") if share_data.client and share_data.client.current_room: share_data.leave_current_room() HandlerManager.set_handlers(False) share_data.clear_before_state() if share_data.current_statistics is not None and share_data.auto_save_statistics: save_statistics(share_data.current_statistics, share_data.statistics_directory) share_data.current_statistics = None share_data.auto_save_statistics = False share_data.statistics_directory = None
def execute(self, context): if share_data.current_statistics is not None: save_statistics(share_data.current_statistics, get_mixer_props().statistics_directory) return {"FINISHED"}