mercurial/mail.py
changeset 28341 8286f551b7ee
parent 27619 10bed65ef209
child 28935 a4c5c23de1d3
equal deleted inserted replaced
28340:c100dbd593e2 28341:8286f551b7ee
   330     charset and transfer-encoding accordingly.'''
   330     charset and transfer-encoding accordingly.'''
   331     cs = 'us-ascii'
   331     cs = 'us-ascii'
   332     if not display:
   332     if not display:
   333         s, cs = _encode(ui, s, charsets)
   333         s, cs = _encode(ui, s, charsets)
   334     return mimetextqp(s, 'plain', cs)
   334     return mimetextqp(s, 'plain', cs)
       
   335 
       
   336 def headdecode(s):
       
   337     '''Decodes RFC-2047 header'''
       
   338     uparts = []
       
   339     for part, charset in email.Header.decode_header(s):
       
   340         if charset is not None:
       
   341             try:
       
   342                 uparts.append(part.decode(charset))
       
   343                 continue
       
   344             except UnicodeDecodeError:
       
   345                 pass
       
   346         try:
       
   347             uparts.append(part.decode('UTF-8'))
       
   348             continue
       
   349         except UnicodeDecodeError:
       
   350             pass
       
   351         uparts.append(part.decode('ISO-8859-1'))
       
   352     return encoding.tolocal(u' '.join(uparts).encode('UTF-8'))