--- a/connectors/PYRO/__init__.py Wed Dec 09 09:43:21 2009 +0100
+++ b/connectors/PYRO/__init__.py Wed Dec 09 09:44:17 2009 +0100
@@ -56,6 +56,9 @@
def catcher_func(*args,**kwargs):
return func(*args,**kwargs)
+ except Pyro.errors.ConnectionClosedError, e: + pluginsroot.logger.write_error("Connection lost!\n") + pluginsroot._connector = None #pluginsroot.logger.write_error(traceback.format_exc())
errmess = ''.join(Pyro.util.getPyroTraceback(e))
--- a/plugger.py Wed Dec 09 09:43:21 2009 +0100
+++ b/plugger.py Wed Dec 09 09:44:17 2009 +0100
@@ -1540,9 +1540,10 @@
def UpdateMethodsFromPLCStatus(self):
# Get PLC state : Running or Stopped
# TODO : use explicit status instead of boolean
if self._connector is not None:
status = self._connector.GetPLCstatus()
if(self.previous_plcstate != status):
@@ -1568,6 +1569,7 @@
if self._connector is None:
if self.UpdateMethodsFromPLCStatus():
status = _(self.previous_plcstate)
{"Broken": self.logger.write_error,
None: lambda x: None}.get(