python: raise CsError(CS_ERR_SKIPDATA) when accessing irrelevant data in skipdata mode. this fixes issue #679
diff --git a/bindings/python/capstone/__init__.py b/bindings/python/capstone/__init__.py
index ec8a9ff..b390cf1 100644
--- a/bindings/python/capstone/__init__.py
+++ b/bindings/python/capstone/__init__.py
@@ -541,6 +541,10 @@
         raise CsError(CS_ERR_DETAIL)
 
     def __gen_detail(self):
+        if self._raw.id == 0:
+            # do nothing in skipdata mode
+            return
+
         arch = self._cs.arch
         if arch == CS_ARCH_ARM:
             (self.usermode, self.vector_size, self.vector_data, self.cps_mode, self.cps_flag, self.cc, self.update_flags, \
@@ -577,6 +581,8 @@
         if 'operands' not in _dict:
             self.__gen_detail()
         if name not in _dict:
+            if self._raw.id == 0:
+                raise CsError(CS_ERR_SKIPDATA)
             raise AttributeError(name)
         return _dict[name]