Fix compatibility for Python2.5 and Debian Lenny

Recent commit to handle warnings were >=Py2.6 and glib binding is
unavailable on Debian Lenny.
This commit is contained in:
Calum Lind 2012-02-15 22:37:36 +00:00
parent b396b11611
commit 74181469bc
2 changed files with 14 additions and 7 deletions

View file

@ -37,7 +37,6 @@
import os
import gtk
import logging
import glib
import warnings
import deluge.component as component
@ -262,9 +261,12 @@ class FilterTreeView(component.Component):
count = model.get_value(row, 3)
#Supress Warning: g_object_set_qdata: assertion `G_IS_OBJECT (object)' failed
with warnings.catch_warnings():
warnings.simplefilter("ignore")
original_filters = warnings.filters[:]
warnings.simplefilter("ignore")
try:
pix = model.get_value(row, 4)
finally:
warnings.filters = original_filters
if pix:
self.renderpix.set_property("visible", True)
@ -292,7 +294,7 @@ class FilterTreeView(component.Component):
if pix:
try:
return gtk.gdk.pixbuf_new_from_file(deluge.common.get_pixmap("%s16.png" % pix))
except glib.GError as e:
except Exception, e:
log.warning(e)
return self.get_transparent_pix(16, 16)

View file

@ -78,11 +78,16 @@ def cell_data_statusicon(column, cell, model, row, data):
"""Display text with an icon"""
try:
icon = ICON_STATE[model.get_value(row, data)]
#Suppress Warning: g_object_set_qdata: assertion `G_IS_OBJECT (object)' failed
with warnings.catch_warnings():
warnings.simplefilter("ignore")
#Supress Warning: g_object_set_qdata: assertion `G_IS_OBJECT (object)' failed
original_filters = warnings.filters[:]
warnings.simplefilter("ignore")
try:
if cell.get_property("pixbuf") != icon:
cell.set_property("pixbuf", icon)
finally:
warnings.filters = original_filters
except KeyError:
pass