From 9e1f82d977603d2a081a7995eee3d3cace80a060 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gina=20H=C3=A4u=C3=9Fge?= Date: Wed, 31 Aug 2016 11:49:53 +0200 Subject: [PATCH] Don't modify the list in the cache, make a copy --- src/octoprint/server/api/files.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/octoprint/server/api/files.py b/src/octoprint/server/api/files.py index a5fa1b7c..bfbf1e17 100644 --- a/src/octoprint/server/api/files.py +++ b/src/octoprint/server/api/files.py @@ -176,6 +176,9 @@ def _getFileList(origin, path=None, filter=None, recursive=False): _file_cache["{}:{}:{}:{}".format(origin, path, recursive, filter)] = (files, lastmodified) def analyse_recursively(files, path=None): + # make a shallow copy in order to not accidentally modify the cached data + files = list(files) + if path is None: path = "" @@ -233,7 +236,7 @@ def _getFileList(origin, path=None, filter=None, recursive=False): return files - analyse_recursively(files) + files = analyse_recursively(files) return files