Fix SVGHMI exception when running on Windows, missing ENODATA in errno.
--- a/svghmi/svghmi_server.py Thu Sep 09 09:37:03 2021 +0200
+++ b/svghmi/svghmi_server.py Thu Sep 09 21:52:27 2021 +0200
@@ -241,6 +241,9 @@
svghmi_servers = {}
svghmi_send_thread = None
+# python's errno on windows seems to have no ENODATA
+ENODATA = errno.ENODATA if hasattr(errno,"ENODATA") else None
+
def SendThreadProc():
global svghmi_session_manager
size = ctypes.c_uint32()
@@ -255,7 +258,7 @@
if res == 0:
svghmi_session.sendMessage(
ctypes.string_at(ptr.value,size.value))
- elif res == errno.ENODATA:
+ elif res == ENODATA:
# this happens when there is no data after wakeup
# because of hmi data refresh period longer than
# PLC common ticktime