[Sugar-devel] [PATCH Browse] Fix bookmarks read from previous session
Manuel Quiñones
manuq at laptop.org
Thu Mar 29 10:50:15 EDT 2012
Color parameter in get_image() method of class LinkButton is being
passed with type str when inside a session, but is type unicode when
read from a previous session, because json stores unicode. And
Rsvg.Handle.new_from_data() needs a single byte string.
This fixes #3402 .
Also removed unused parameters in LinkButton constructor.
Signed-off-by: Manuel Quiñones <manuq at laptop.org>
---
linkbutton.py | 7 ++++++-
webactivity.py | 2 +-
2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/linkbutton.py b/linkbutton.py
index 2804397..d1b4ea9 100644
--- a/linkbutton.py
+++ b/linkbutton.py
@@ -40,8 +40,13 @@ class LinkButton(TrayButton, GObject.GObject):
None, ([str])),
}
- def __init__(self, url, buf, color, title, owner, index, hash):
+ def __init__(self, buf, color, title, owner, hash):
TrayButton.__init__(self)
+
+ # Color read from the Journal may be Unicode, but Rsvg needs
+ # it as single byte string:
+ if isinstance(color, unicode):
+ color = str(color)
self.set_image(buf, color.split(',')[1], color.split(',')[0])
self.hash = hash
diff --git a/webactivity.py b/webactivity.py
index e156173..aadc29a 100644
--- a/webactivity.py
+++ b/webactivity.py
@@ -518,7 +518,7 @@ class WebActivity(activity.Activity):
def _add_link_totray(self, url, buf, color, title, owner, index, hash):
''' add a link to the tray '''
- item = LinkButton(url, buf, color, title, owner, index, hash)
+ item = LinkButton(buf, color, title, owner, hash)
item.connect('clicked', self._link_clicked_cb, url)
item.connect('remove_link', self._link_removed_cb)
# use index to add to the tray
--
1.7.7.6
More information about the Sugar-devel
mailing list