From 0e97cc678cb9ec813460ca2e60a23595e753c2f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20=27Necoro=27=20Neumann?= Date: Wed, 19 Mar 2008 16:56:36 +0100 Subject: Make logger thread-safe --- portato/gui/views.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'portato/gui/views.py') diff --git a/portato/gui/views.py b/portato/gui/views.py index b069aae..41e6ae5 100644 --- a/portato/gui/views.py +++ b/portato/gui/views.py @@ -12,7 +12,7 @@ from __future__ import absolute_import, with_statement -import gtk +import gtk, gobject import pango import gtksourceview2 import logging @@ -142,5 +142,8 @@ class LogView (logging.Handler): tag = "log_%s" % name break - self.buf.insert_with_tags_by_name(self.buf.get_end_iter(), "* ", tag) - self.buf.insert(self.buf.get_end_iter(), record.getMessage()+"\n") + def _add(): + self.buf.insert_with_tags_by_name(self.buf.get_end_iter(), "* ", tag) + self.buf.insert(self.buf.get_end_iter(), record.getMessage()+"\n") + + gobject.idle_add(_add) # logger might be called from another thread -- cgit v1.2.3