From 39fd6e0be3955501dd325c686785da007eee0a97 Mon Sep 17 00:00:00 2001 From: Markus Zolliker Date: Wed, 25 Oct 2023 10:40:07 +0200 Subject: [PATCH] frappy.client: fix the case then timestamp is missing the previous version failed when timestamp was missing Change-Id: I77e1fb81b19fb4ee2749d731bafacbac46132f8e Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/32404 Tested-by: Jenkins Automated Tests Reviewed-by: Enrico Faulhaber Reviewed-by: Markus Zolliker --- frappy/client/__init__.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/frappy/client/__init__.py b/frappy/client/__init__.py index 70df4e31..d12d19eb 100644 --- a/frappy/client/__init__.py +++ b/frappy/client/__init__.py @@ -390,16 +390,17 @@ class SecopClient(ProxyClient): else: module_param = self.internal.get(f'{ident}:value', None) if module_param is not None: + now = time.time() if action.startswith(ERRORPREFIX): - timestamp = data[2].get('t', None) + timestamp = data[2].get('t', now) readerror = frappy.errors.make_secop_error(*data[0:2]) value = None else: - timestamp = data[1].get('t', None) + timestamp = data[1].get('t', now) value = data[0] readerror = None module, param = module_param - timestamp = min(time.time(), timestamp) # no timestamps in the future! + timestamp = min(now, timestamp) # no timestamps in the future! try: self.updateValue(module, param, value, timestamp, readerror) except KeyError: