Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/sugar
diff options
context:
space:
mode:
authorMarco Pesenti Gritti <marco@localhost.localdomain>2006-08-12 23:31:24 (GMT)
committer Marco Pesenti Gritti <marco@localhost.localdomain>2006-08-12 23:31:24 (GMT)
commitdd7fff79f87116dd69d975187363da48edfbfa4b (patch)
treec784e4e8c69f2205004a15910cf05dd8180aaa5c /sugar
parentc7c71d25a88fd6a1700885b87d33aa923730fb94 (diff)
Fix add_python_path, ensure service exist before trying to log
Diffstat (limited to 'sugar')
-rw-r--r--sugar/env.py3
-rw-r--r--sugar/logger.py16
2 files changed, 18 insertions, 1 deletions
diff --git a/sugar/env.py b/sugar/env.py
index 2a29daa..66299bf 100644
--- a/sugar/env.py
+++ b/sugar/env.py
@@ -12,7 +12,8 @@ import sugar.setup
def add_to_python_path(path):
sys.path.insert(0, path)
if os.environ.has_key('PYTHONPATH'):
- os.environ['PYTHONPATH'] += ':' + path
+ old_path = os.environ['PYTHONPATH']
+ os.environ['PYTHONPATH'] = path + ':' + old_path
else:
os.environ['PYTHONPATH'] = path
diff --git a/sugar/logger.py b/sugar/logger.py
index fd5bf31..8c4ecff 100644
--- a/sugar/logger.py
+++ b/sugar/logger.py
@@ -16,11 +16,27 @@ class Handler(logging.Handler):
self._console_id = console_id
self._console = console
self._records = []
+ self._console_started = False
+
+ bus = dbus.SessionBus()
+ bus.add_signal_receiver(self.__name_owner_changed,
+ dbus_interface = "org.freedesktop.DBus",
+ signal_name = "NameOwnerChanged")
+
+ def __name_owner_changed(self, service_name, old_name, new_name):
+ if new_name != None:
+ self._console_started = True
+ else:
+ self._console_started = False
def _log(self):
+ if not self._console_started:
+ return True
+
for record in self._records:
self._console.log(record.levelno, self._console_id, record.msg)
self._records = []
+
return False
def emit(self, record):