From 1aee3893d29ac0d374e8704b314167d6501cab74 Mon Sep 17 00:00:00 2001 From: Ben Busby Date: Sat, 23 Oct 2021 12:02:00 -0600 Subject: [PATCH] Catch nonexistant session file, fix session type check --- app/routes.py | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/app/routes.py b/app/routes.py index 73902c5..3cba939 100644 --- a/app/routes.py +++ b/app/routes.py @@ -60,12 +60,15 @@ def session_required(f): session_path = os.path.join( app.config['SESSION_FILE_DIR'], user_session) - with open(session_path, 'rb') as session_file: - _ = pickle.load(session_file) - data = pickle.load(session_file) - if type(data) == 'dict' and 'valid' in data: - continue - invalid_sessions.append(session_path) + try: + with open(session_path, 'rb') as session_file: + _ = pickle.load(session_file) + data = pickle.load(session_file) + if isinstance(data, dict) and 'valid' in data: + continue + invalid_sessions.append(session_path) + except FileNotFoundError: + pass for invalid_session in invalid_sessions: os.remove(invalid_session)