Index: tools/dev/contribulyze.py
===================================================================
--- tools/dev/contribulyze.py	(revision 20985)
+++ tools/dev/contribulyze.py	(working copy)
@@ -73,6 +73,10 @@
   same in HTML as the original address."""
   return "".join(map(lambda x: "<span>&#%d;</span>" % ord(x), addr))
 
+def html_title_spam_guard(addr):
+  """Return a spam-protected version of email ADDR that renders the
+  same in HTML title as the original address."""
+  return "".join(map(lambda x: "&#%d;" % ord(x), addr))
 
 def escape_html(str):
   """Return an HTML-escaped version of STR."""
@@ -305,7 +309,7 @@
       if not self.real_name and not self.username:
         name_bits.append(self.email)
       elif html:
-        name_bits.append("&lt;%s&gt;" % html_spam_guard(self.email))
+        name_bits.append("&lt;%s&gt;" % html_title_spam_guard(self.email))
       else:
         name_bits.append("<%s>" % self.email)
     if self.username:
