Index: tracdarcs/components.py
===================================================================
--- tracdarcs/components.py	(revision 195)
+++ tracdarcs/components.py	(revision 197)
@@ -229,10 +229,11 @@
     def render_property(self, name, mode, context, props):
         eqcsets = props[name]
-        eqlinks = [tag.a(repos or '(default)', class_="changeset",
+        eqlinks = [(tag.a(repos or '(default)', class_="changeset",
                          title="Equivalent patch %s in repository %s" % (
                              rev, repos or '(default)'),
-                         href=context.href.changeset(rev, repos))
+                         href=context.href.changeset(rev, repos)),)
                    for repos, rev in eqcsets]
         return RenderedProperty(name='Present in:',
                                 name_attributes=[("class", "property")],
-                                content=tag([eqlinks]))
+                                content=tag([(link, ', ') for link in eqlinks[:-1]],
+                                            eqlinks[-1]))
Index: tracdarcs/repository.py
===================================================================
--- tracdarcs/repository.py	(revision 187)
+++ tracdarcs/repository.py	(revision 198)
@@ -615,17 +615,17 @@
 
     def get_properties(self):
-        # omit ending .gz, because under some configuration the Apache
-        # web server automatically tags such URLs with something like
-        # "Content-Encoding: gzip" that in turn may confuse the browser.
-        # Darcs recognizes also extension-stripped hashnames.
-
         props = dict(Hashname=self.__hash)
 
-        c = self.repos.db.cursor()
-        c.execute('SELECT dcs.repo_id, dcs.rev '
-                  'FROM darcs_changesets dcs, darcs_changesets dcs2 '
+        # Compute a list of "equivalent changesets", when the same
+        # changeset is present in other repositories.
+
+        c = self.repos.db.cursor()
+        c.execute('SELECT rep.value, dcs.rev '
+                  'FROM darcs_changesets dcs, darcs_changesets dcs2, repository rep '
                   'WHERE dcs2.repo_id = %s AND dcs2.rev = %s '
                   '  AND dcs.hash = dcs2.hash '
-                  '  AND dcs.repo_id <> dcs2.repo_id', (self.repos.id, self.rev))
+                  '  AND dcs.repo_id <> dcs2.repo_id'
+                  '  AND rep.id = dcs.repo_id AND rep.name = \'name\''
+                  'ORDER BY rep.value', (self.repos.id, self.rev))
         eqcsets = [(repo, rev) for repo,rev in c.fetchall()]
         if eqcsets:
