~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tuned_gzip.py

  • Committer: John Arbash Meinel
  • Date: 2010-08-23 21:36:06 UTC
  • mto: This revision was merged to the branch mainline in revision 5390.
  • Revision ID: john@arbash-meinel.com-20100823213606-1pk5w1nyaz9kz9k0
Lots of compatibility changes for python2.4 and mingw32 compilers.

gcc has strtoll available, and does the wrong thing if you use _strtoi64 (it implicitly
defines it to return an 'int' which isn't a 64-bit integer.)

Further, python2.4 doesn't support the %lu syntax, only having %ld and %d. So we go
back to casting everything into real python objects and then stringifying them, but
only for python 2.4.

Show diffs side-by-side

added added

removed removed

Lines of Context:
395
395
        # (4 seconds to 1 seconds for the sample upgrades I was testing).
396
396
        self.write(''.join(lines))
397
397
 
398
 
    if sys.version_info > (2, 7):
399
 
        # As of Python 2.7 the crc32 must be positive when close is called
400
 
        def close(self):
401
 
            if self.fileobj is None:
402
 
                return
403
 
            if self.mode == gzip.WRITE:
404
 
                self.crc &= 0xFFFFFFFFL
405
 
            gzip.GzipFile.close(self)
406
398