misc: delete old form_tokens files (#30368)

This commit is contained in:
Frédéric Péters 2019-06-25 22:45:37 +02:00
parent f7af451d05
commit cbd2d35788
1 changed files with 14 additions and 2 deletions

View File

@ -101,7 +101,10 @@ class QommonPublisher(Publisher, object):
ngettext = lambda self, msgid1, msgid2, n: msgid1
app_dir = None
form_tokens_dir = None
@property
def form_tokens_dir(self):
return os.path.join(self.app_dir, 'form_tokens')
def get_root_url(self):
if self.get_request():
@ -498,7 +501,6 @@ class QommonPublisher(Publisher, object):
except OSError as e:
pass
self.form_tokens_dir = os.path.join(self.app_dir, 'form_tokens')
try:
os.mkdir(self.form_tokens_dir)
except OSError: # already exists
@ -653,6 +655,16 @@ class QommonPublisher(Publisher, object):
except KeyError:
pass
continue
# also delete obsolete form_tokens that would have be missed when
# cleaning sessions.
form_tokens_dir = self.form_tokens_dir
if os.path.exists(form_tokens_dir):
for filename in os.listdir(form_tokens_dir):
if os.stat(os.path.join(form_tokens_dir, filename)).st_mtime < creation_limit:
try:
os.unlink(os.path.join(form_tokens_dir, filename))
except OSError:
pass
finally:
os.close(fd)