From fb9fd7e6c9fceb14c365aeb8802693f807becad2 Mon Sep 17 00:00:00 2001 From: Bryan Mayland Date: Sun, 14 Jul 2013 11:20:37 -0400 Subject: [PATCH] Fix metadata removal on upload for files with un-sane characters in them When re-uploading a file with characters that will be later sanitized, the old metadata entry wasn't removed because it checked the unsane filename rather than the sanitized version that will later be stored. This was creating an inconsistent metadata view during analysis for files with spaces in them. --- octoprint/gcodefiles.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/octoprint/gcodefiles.py b/octoprint/gcodefiles.py index b44f2a3..d81acde 100644 --- a/octoprint/gcodefiles.py +++ b/octoprint/gcodefiles.py @@ -123,14 +123,15 @@ class GcodeManager: if absolutePath is None: return None - if file.filename in self._metadata.keys(): + basename = os.path.basename(absolutePath) + if basename in self._metadata.keys(): # delete existing metadata entry, since the file is going to get overwritten - del self._metadata[file.filename] + del self._metadata[basename] self._metadataDirty = True self._saveMetadata() file.save(absolutePath) - self._metadataAnalyzer.addFileToQueue(os.path.basename(absolutePath)) - return self._getBasicFilename(absolutePath) + self._metadataAnalyzer.addFileToQueue(basename) + return basename def getFutureFilename(self, file): if not file: