~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/osutils.py

  • Committer: John Arbash Meinel
  • Date: 2007-02-01 14:49:53 UTC
  • mto: This revision was merged to the branch mainline in revision 2252.
  • Revision ID: john@arbash-meinel.com-20070201144953-d877vy9zbvxr5q98
(John Arbash Meinel) hard-code the whitespace chars to avoid problems in some locales.

Show diffs side-by-side

added added

removed removed

Lines of Context:
40
40
from shutil import (
41
41
    rmtree,
42
42
    )
43
 
import string
44
43
import tempfile
45
44
from tempfile import (
46
45
    mkdtemp,
777
776
 
778
777
def contains_whitespace(s):
779
778
    """True if there are any whitespace characters in s."""
780
 
    for ch in string.whitespace:
 
779
    # string.whitespace can include '\xa0' in certain locales, because it is
 
780
    # considered "non-breaking-space" as part of ISO-8859-1. But it
 
781
    # 1) Isn't a breaking whitespace
 
782
    # 2) Isn't one of ' \t\r\n' which are characters we sometimes use as
 
783
    #    separators
 
784
    # 3) '\xa0' isn't unicode safe since it is >128.
 
785
    # So we are following textwrap's example and hard-coding our own.
 
786
    # We probably could ignore \v and \f, too.
 
787
    for ch in u' \t\n\r\v\f':
781
788
        if ch in s:
782
789
            return True
783
790
    else: