about summary refs log tree commit diff stats
path: root/miasm2/core
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--miasm2/core/types.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/miasm2/core/types.py b/miasm2/core/types.py
index b6eaf0e4..bb7536e5 100644
--- a/miasm2/core/types.py
+++ b/miasm2/core/types.py
@@ -1362,9 +1362,10 @@ class MemStruct(MemType):
             offset = 0
         return self._addr + offset
 
-    def get_offset(self, field_name):
+    @classmethod
+    def get_offset(cls, field_name):
         """Shorthand for self.get_type().get_offset(field_name)."""
-        return self._type.get_offset(field_name)
+        return cls.get_type().get_offset(field_name)
 
     def get_field(self, name):
         """Get a field value by name.
@@ -1575,6 +1576,11 @@ class MemArray(MemType):
     def get_addr(self, idx=0):
         return self._addr + self.get_type().get_offset(idx)
 
+    @classmethod
+    def get_offset(cls, idx):
+        """Shorthand for self.get_type().get_offset(idx)."""
+        return cls.get_type().get_offset(idx)
+
     def __getitem__(self, idx):
         return self.get_type().get_item(self._vm, self._addr, idx)