From 83183408eabb64ac584079d8813bf78230899d57 Mon Sep 17 00:00:00 2001 From: Martin Diehl Date: Fri, 30 Jul 2021 20:09:47 +0200 Subject: [PATCH] can only decode strings, not arrays of strings --- python/damask/_result.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/python/damask/_result.py b/python/damask/_result.py index 1fa376f63..88e555b27 100644 --- a/python/damask/_result.py +++ b/python/damask/_result.py @@ -1311,7 +1311,8 @@ class Result: loc = f[group+'/'+label] datasets_in[arg]={'data' :loc[()], 'label':label, - 'meta': {k:(v if h5py3 else v.decode()) for k,v in loc.attrs.items()}} + 'meta': {k:(v.decode() if not h5py3 and type(v) is bytes else v) \ + for k,v in loc.attrs.items()}} lock.release() r = func(**datasets_in,**args) return [group,r] @@ -1379,7 +1380,7 @@ class Result: now.strftime('%Y-%m-%d %H:%M:%S%z').encode() for l,v in result['meta'].items(): - dataset.attrs[l.lower()]=v if h5py3 else v.encode() + dataset.attrs[l.lower()]=v.encode() if not h5py3 and type(v) is str else v creator = dataset.attrs['creator'] if h5py3 else \ dataset.attrs['creator'].decode() dataset.attrs['creator'] = f'damask.Result.{creator} v{damask.version}' if h5py3 else \