mercurial/encoding.py
branchstable
changeset 15672 2ebe3d0ce91d
parent 15143 16c129b0f465
child 15769 afdf4f5bac61
equal deleted inserted replaced
15671:3c5e818ac679 15672:2ebe3d0ce91d
   169         if u == lu:
   169         if u == lu:
   170             return s # preserve localstring
   170             return s # preserve localstring
   171         return lu.encode(encoding)
   171         return lu.encode(encoding)
   172     except UnicodeError:
   172     except UnicodeError:
   173         return s.lower() # we don't know how to fold this except in ASCII
   173         return s.lower() # we don't know how to fold this except in ASCII
       
   174     except LookupError, k:
       
   175         raise error.Abort(k, hint="please check your locale settings")
       
   176 
       
   177 def upper(s):
       
   178     "best-effort encoding-aware case-folding of local string s"
       
   179     try:
       
   180         if isinstance(s, localstr):
       
   181             u = s._utf8.decode("utf-8")
       
   182         else:
       
   183             u = s.decode(encoding, encodingmode)
       
   184 
       
   185         uu = u.upper()
       
   186         if u == uu:
       
   187             return s # preserve localstring
       
   188         return uu.encode(encoding)
       
   189     except UnicodeError:
       
   190         return s.upper() # we don't know how to fold this except in ASCII
       
   191     except LookupError, k:
       
   192         raise error.Abort(k, hint="please check your locale settings")