Browse Source

Fix stripping of prefix when it contains escapes

tags/v1.1
JustAnotherArchivist 1 year ago
parent
commit
c18c440871
1 changed files with 3 additions and 3 deletions
  1. +3
    -3
      codearchiver/storage.py

+ 3
- 3
codearchiver/storage.py View File

@@ -158,13 +158,13 @@ class DirectoryStorage(Storage):
def search_metadata(self, criteria, _suffix = '_codearchiver_metadata.txt'):
_logger.info(f'Searching metadata by criteria: {criteria!r}')
# Replace this with `root_dir` when dropping Python 3.9 support
escapedDirPrefix = os.path.join(glob.escape(self._directory), '')
escapedDirPrefixLen = len(escapedDirPrefix)
prefix = os.path.join(self._directory, '')
escapedDirPrefix = glob.escape(prefix)
escapedSuffix = glob.escape(_suffix)
files = glob.glob(f'{escapedDirPrefix}*{escapedSuffix}')
files.sort()
for metadataFilename in files:
metadataFilename = metadataFilename[escapedDirPrefixLen:]
metadataFilename = metadataFilename[len(prefix):]
assert '\n' not in metadataFilename
_logger.info(f'Searching metadata {metadataFilename}')
with self.open(metadataFilename, 'r') as fp:


Loading…
Cancel
Save