From dd87191d9305e0a739c7a4650ed051ee06bd861a Mon Sep 17 00:00:00 2001 From: Andre LeBlanc Date: Wed, 7 Aug 2024 14:09:47 +0000 Subject: [PATCH 1/2] Fix #1151 --- sarracenia/__init__.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/sarracenia/__init__.py b/sarracenia/__init__.py index d0f01e84f..4abf34c92 100755 --- a/sarracenia/__init__.py +++ b/sarracenia/__init__.py @@ -425,9 +425,10 @@ def computeIdentity(msg, path, o, offset=0, data=None) -> None: if xattr.get('mtime') >= msg['mtime']: logger.debug("mtime remembered by xattr") fxainteg = xattr.get('identity') - if fxainteg['method'] == o.identity_method: - msg['identity'] = fxainteg - return + if fxainteg != 'null': + if fxainteg['method'] == o.identity_method: + msg['identity'] = fxainteg + return logger.debug("xattr different method than on disk") calc_method = o.identity_method else: From 9c580d5b0de41c428dc317d6b5e0b66ed64353a6 Mon Sep 17 00:00:00 2001 From: Andre LeBlanc Date: Wed, 7 Aug 2024 19:11:11 +0000 Subject: [PATCH 2/2] Bug found on cod from sarra component. Prevents having to add patch to computeIdentity --- sarracenia/__init__.py | 7 +++---- sarracenia/flow/__init__.py | 5 ++++- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/sarracenia/__init__.py b/sarracenia/__init__.py index 4abf34c92..5e8624218 100755 --- a/sarracenia/__init__.py +++ b/sarracenia/__init__.py @@ -425,10 +425,9 @@ def computeIdentity(msg, path, o, offset=0, data=None) -> None: if xattr.get('mtime') >= msg['mtime']: logger.debug("mtime remembered by xattr") fxainteg = xattr.get('identity') - if fxainteg != 'null': - if fxainteg['method'] == o.identity_method: - msg['identity'] = fxainteg - return + if fxainteg['method'] == o.identity_method: + msg['identity'] = fxainteg + return logger.debug("xattr different method than on disk") calc_method = o.identity_method else: diff --git a/sarracenia/flow/__init__.py b/sarracenia/flow/__init__.py index 7501c15c8..6036449b3 100644 --- a/sarracenia/flow/__init__.py +++ b/sarracenia/flow/__init__.py @@ -2096,7 +2096,10 @@ def download(self, msg, options) -> bool: if self.o.identity_method.startswith('cod,'): download_algo = self.o.identity_method[4:] elif 'identity' in msg: - download_algo = msg['identity']['method'] + if msg['identity']['method'] == 'cod': + download_algo = msg['identity']['value'] + else: + download_algo = msg['identity']['method'] else: download_algo = None