diff options
| author | Barry Warsaw <barry@python.org> | 2002-08-14 15:09:12 (GMT) | 
|---|---|---|
| committer | Barry Warsaw <barry@python.org> | 2002-08-14 15:09:12 (GMT) | 
| commit | 09707e363723fa24ba53e4e5d77cc26d4dea724f (patch) | |
| tree | 13813beea856b0c45d6319a15878e505854dfe83 /Lib/gettext.py | |
| parent | 20f0b36a043cf0abc06dfde64e09006fe80ce31e (diff) | |
| download | cpython-09707e363723fa24ba53e4e5d77cc26d4dea724f.zip cpython-09707e363723fa24ba53e4e5d77cc26d4dea724f.tar.gz cpython-09707e363723fa24ba53e4e5d77cc26d4dea724f.tar.bz2  | |
Patch by Tim to shut up the compiler's DeprecationWarnings on the
high-bit-set hex constants.
Diffstat (limited to 'Lib/gettext.py')
| -rw-r--r-- | Lib/gettext.py | 27 | 
1 files changed, 9 insertions, 18 deletions
diff --git a/Lib/gettext.py b/Lib/gettext.py index 253b6d8..f7649e6 100644 --- a/Lib/gettext.py +++ b/Lib/gettext.py @@ -139,14 +139,11 @@ class NullTranslations:  class GNUTranslations(NullTranslations):      # Magic number of .mo files -    LE_MAGIC = 0x950412de -    BE_MAGIC = 0xde120495 +    LE_MAGIC = 0x950412deL +    BE_MAGIC = 0xde120495L      def _parse(self, fp):          """Override this method to support alternative .mo formats.""" -        # We need to & all 32 bit unsigned integers with 0xffffffff for -        # portability to 64 bit machines. -        MASK = 0xffffffff          unpack = struct.unpack          filename = getattr(fp, 'name', '')          # Parse the .mo file header, which consists of 5 little endian 32 @@ -155,28 +152,22 @@ class GNUTranslations(NullTranslations):          buf = fp.read()          buflen = len(buf)          # Are we big endian or little endian? -        magic = unpack('<i', buf[:4])[0] & MASK +        magic = unpack('<I', buf[:4])[0]          if magic == self.LE_MAGIC: -            version, msgcount, masteridx, transidx = unpack('<4i', buf[4:20]) -            ii = '<ii' +            version, msgcount, masteridx, transidx = unpack('<4I', buf[4:20]) +            ii = '<II'          elif magic == self.BE_MAGIC: -            version, msgcount, masteridx, transidx = unpack('>4i', buf[4:20]) -            ii = '>ii' +            version, msgcount, masteridx, transidx = unpack('>4I', buf[4:20]) +            ii = '>II'          else:              raise IOError(0, 'Bad magic number', filename) -        # more unsigned ints -        msgcount &= MASK -        masteridx &= MASK -        transidx &= MASK          # Now put all messages from the .mo file buffer into the catalog          # dictionary.          for i in xrange(0, msgcount):              mlen, moff = unpack(ii, buf[masteridx:masteridx+8]) -            moff &= MASK -            mend = moff + (mlen & MASK) +            mend = moff + mlen              tlen, toff = unpack(ii, buf[transidx:transidx+8]) -            toff &= MASK -            tend = toff + (tlen & MASK) +            tend = toff + tlen              if mend < buflen and tend < buflen:                  tmsg = buf[toff:tend]                  catalog[buf[moff:mend]] = tmsg  | 
