Index: trac/ticket/web_ui.py
===================================================================
--- trac/ticket/web_ui.py       (revision 4282)
+++ trac/ticket/web_ui.py       (working copy)
@@ -286,9 +286,9 @@

         def produce((id, ts, author, type, summary), status, fields,
                     comment, cid):
+            info = ''
             if status == 'edit':
                 if 'ticket_details' in filters:
-                    info = ''
                     if len(fields) > 0:
                         info = ', '.join(['<i>%s</i>' % f for f in \
                                           fields.keys()]) + ' changed<br />'
@@ -298,9 +298,7 @@
                 if status == 'closed' and fields.has_key('resolution'):
                     info = fields['resolution']
                     if info and comment:
-                        info = '%s: ' % info
-                else:
-                    info = ''
+                        info += ": "
             else:
                 return None
             kind, verb = status_map[status]
@@ -309,16 +307,15 @@
             ticket_href = req.href.ticket(id)
             if cid:
                 ticket_href += '#comment:' + cid
-            markup = message = None
+            markup = None
             if status == 'new':
-                message = summary
+                markup = summary
             else:
-                markup = Markup(info)
-                message = comment
+                markup = info + comment
             t = datetime.fromtimestamp(ts, utc)
             event = TimelineEvent(kind, title, ticket_href, markup)
             event.set_changeinfo(t, author)
-            event.set_context('ticket', id, message)
+            event.set_context('ticket', id)
             return event

         # Ticket changes

