From 57ed73cb2137bd448d79785214570489011976c5 Mon Sep 17 00:00:00 2001 From: Ivan Frade Date: Thu, 20 Aug 2009 00:17:11 +0300 Subject: [PATCH] Escape data before putting it into markup --- src/album_art_panel.py | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/album_art_panel.py b/src/album_art_panel.py index ae345ab..0bd2871 100644 --- a/src/album_art_panel.py +++ b/src/album_art_panel.py @@ -1,23 +1,22 @@ #!/usr/bin/env python2.5 import hildon import gtk, gobject -from tracker_backend import TrackerBackend from album_art_spec import getCoverArtThumbFileName from download_dialog import MussorgskyAlbumArtDownloadDialog +def escape_html (text): + return text.replace ("&","&").replace ("<", "<").replace (">", ">").replace ("\"", ""e;") + class MussorgskyAlbumArtPanel (hildon.StackableWindow): - def __init__ (self): + def __init__ (self, album_artists): hildon.StackableWindow.__init__ (self) self.set_title ("Album art handling") self.set_border_width (12) self.__create_view () self.model = gtk.ListStore (str, gtk.gdk.Pixbuf, str, str) - self.tracker = TrackerBackend () - - pairs = self.tracker.get_all_pairs_artist_album () - for p in pairs: + for p in album_artists: if (not p[1]): continue album_art_path = getCoverArtThumbFileName (p[1]) @@ -25,7 +24,7 @@ class MussorgskyAlbumArtPanel (hildon.StackableWindow): pixbuf = gtk.gdk.pixbuf_new_from_file_at_size (album_art_path, 124, 124) except gobject.GError: pixbuf = None - t = ("%s\n%s" % (p[1], p[0]), pixbuf, p[0], p[1]) + t = ("%s\n%s" % (escape_html(p[1]), escape_html(p[0])), pixbuf, p[0], p[1]) self.model.append (t) @@ -71,7 +70,10 @@ class MussorgskyAlbumArtPanel (hildon.StackableWindow): if __name__ == "__main__": - window = MussorgskyAlbumArtPanel () + artists_albums = [("Artist &%d" % i, "Album <%d>" % i) for i in range (0, 100)] + + + window = MussorgskyAlbumArtPanel (artists_albums) window.connect ("destroy", gtk.main_quit ) window.show_all () gtk.main () -- 1.7.9.5