diff -r 46dd4358e8a8 -r 67d32a91d70b connectors/PYRO/__init__.py --- a/connectors/PYRO/__init__.py Sun Dec 06 21:43:34 2009 +0100 +++ b/connectors/PYRO/__init__.py Sun Dec 06 22:52:51 2009 +0100 @@ -92,7 +92,8 @@ object is recreated meanwhile, so we must not keep ref to it here """ - if pluginsroot._connector.GetPyroProxy().GetPLCstatus() == "Dirty": + current_status = pluginsroot._connector.GetPyroProxy().GetPLCstatus() + if current_status == "Dirty": """ Some bad libs with static symbols may polute PLC ask runtime to suicide and come back again @@ -112,6 +113,8 @@ """ for safe use in from debug thread, must use the copy """ + if self.RemotePLCObjectProxyCopy is None: + self.RemotePLCObjectProxyCopy = copy.copy(pluginsroot._connector.GetPyroProxy()) return self.RemotePLCObjectProxyCopy.GetTraceVariables() GetTraceVariables = PyroCatcher(_PyroGetTraceVariables,("Broken",None,None))