~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/osutils.py

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2006-11-16 17:59:07 UTC
  • mfrom: (2127.4.1 win.console.cp0)
  • Revision ID: pqm@pqm.ubuntu.com-20061116175907-57fe66263308d365
(jam, bialix) Workaround for cp0 console encoding on Windows.

Show diffs side-by-side

added added

removed removed

Lines of Context:
372
372
            mutter('encoding stdout as sys.stdin encoding %r', output_encoding)
373
373
    else:
374
374
        mutter('encoding stdout as sys.stdout encoding %r', output_encoding)
 
375
    if output_encoding == 'cp0':
 
376
        # invalid encoding (cp0 means 'no codepage' on Windows)
 
377
        output_encoding = bzrlib.user_encoding
 
378
        mutter('cp0 is invalid encoding.'
 
379
               ' encoding stdout as bzrlib.user_encoding %r', output_encoding)
375
380
    return output_encoding
376
381
 
377
382
 
1085
1090
                         "  Continuing with ascii encoding.\n"
1086
1091
                         % (e, os.environ.get('LANG')))
1087
1092
 
1088
 
    if _cached_user_encoding is None:
 
1093
    # Windows returns 'cp0' to indicate there is no code page. So we'll just
 
1094
    # treat that as ASCII, and not support printing unicode characters to the
 
1095
    # console.
 
1096
    if _cached_user_encoding in (None, 'cp0'):
1089
1097
        _cached_user_encoding = 'ascii'
1090
1098
    return _cached_user_encoding
1091
1099