From: John Spray Date: Fri, 1 Apr 2016 13:27:31 +0000 (+0100) Subject: pybind: fix unicode handling in CephFSVolumeClient::purge X-Git-Tag: v11.0.0~552^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=e590f4d05fdb46747e83e35e66a26d9f4aa0314d;p=ceph.git pybind: fix unicode handling in CephFSVolumeClient::purge os.path.join is sensitive to string encoding, but just doing a straight substitution should not be. Signed-off-by: John Spray --- diff --git a/src/pybind/ceph_volume_client.py b/src/pybind/ceph_volume_client.py index 656dce5d3d4b..e37c904f9dfb 100644 --- a/src/pybind/ceph_volume_client.py +++ b/src/pybind/ceph_volume_client.py @@ -526,7 +526,10 @@ class CephFSVolumeClient(object): d = self.fs.readdir(dir_handle) while d: if d.d_name not in [".", ".."]: - d_full = os.path.join(root_path, d.d_name) + # Do not use os.path.join because it is sensitive + # to string encoding, we just pass through dnames + # as byte arrays + d_full = "{0}/{1}".format(root_path, d.d_name) if d.is_dir(): rmtree(d_full) else: