# HG changeset patch # User etisserant # Date 1232121143 -3600 # Node ID 732e30ac8bf305c8a004dd1858da523ea2330f46 # Parent 8fca8b555808fe402c39bfa66cd18645a06f6166 Fixed the way LOCAL:// connector detects X11 poisoned plugins to avoid launching tray-icon enabled runtime (-x1) diff -r 8fca8b555808 -r 732e30ac8bf3 connectors/__init__.py --- a/connectors/__init__.py Fri Jan 16 16:50:54 2009 +0100 +++ b/connectors/__init__.py Fri Jan 16 16:52:23 2009 +0100 @@ -40,8 +40,10 @@ return getattr(connectormodule, factoryname)(uri, pluginsroot) elif servicetype == "LOCAL": #handle incompatibility with tray icon and svgui... - no_poisoned_plugin = pluginsroot.GetChildByType("svgui") is None - runtime_port = pluginsroot.AppFrame.StartLocalRuntime(taskbaricon = no_poisoned_plugin) + poisoned_plugin = False + for PlugIn in pluginsroot.IterChilds(): + poisoned_plugin |= PlugIn.PlugType == "svgui" + runtime_port = pluginsroot.AppFrame.StartLocalRuntime(taskbaricon = not poisoned_plugin) import PYRO return PYRO.PYRO_connector_factory( "PYRO://127.0.0.1:"+str(runtime_port), diff -r 8fca8b555808 -r 732e30ac8bf3 plugger.py --- a/plugger.py Fri Jan 16 16:50:54 2009 +0100 +++ b/plugger.py Fri Jan 16 16:52:23 2009 +0100 @@ -313,12 +313,6 @@ else: return self - def GetChildByType(self, TypeName): - if TypeName: - return self._GetChildBySomething("PlugType", TypeName) - else: - return self - def GetChildByIECLocation(self, Location): if Location: return self._GetChildBySomething("IEC_Channel", Location)