Comment 3 for bug 92608

Revision history for this message
John A Meinel (jameinel) wrote :

this should be fixed before bzr-0.15.final

This seems to fix the problem, but we should have a _iter_changes test on unicode unknowns to make sure this doesn't regress.

Felix: Can you test and see if this fixes "bzr status" for you?

=== modified file 'bzrlib/workingtree_4.py'
--- bzrlib/workingtree_4.py 2007-03-13 13:38:34 +0000
+++ bzrlib/workingtree_4.py 2007-03-15 19:59:03 +0000
@@ -2033,9 +2033,10 @@
                 new_executable = bool(
                     stat.S_ISREG(root_dir_info[3].st_mode)
                     and stat.S_IEXEC & root_dir_info[3].st_mode)
- yield (None, (None, current_root), True, (False, False),
+ current_root_unicode = current_root.decode('utf8')
+ yield (None, (None, current_root_unicode), True, (False, False),
                     (None, None),
- (None, splitpath(current_root)[-1]),
+ (None, splitpath(current_root_unicode)[-1]),
                     (None, root_dir_info[2]), (None, new_executable))
             initial_key = (current_root, '', '')
             block_index, _ = state._find_block_index_from_key(initial_key)
@@ -2225,11 +2226,12 @@
                                     stat.S_ISREG(current_path_info[3].st_mode)
                                     and stat.S_IEXEC & current_path_info[3].st_mode)
                                 if want_unversioned:
- yield (None, (None, current_path_info[0]),
+ yield (None,
+ (None, utf8_decode(current_path_info[0])[0]),
                                         True,
                                         (False, False),
                                         (None, None),
- (None, current_path_info[1]),
+ (None, utf8_decode(current_path_info[1])[0]),
                                         (None, current_path_info[2]),
                                         (None, new_executable))
                             # dont descend into this unversioned path if it is