~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/smart/protocol.py

MergeĀ lp:bzr/2.2.

Show diffs side-by-side

added added

removed removed

Lines of Context:
62
62
 
63
63
def _encode_tuple(args):
64
64
    """Encode the tuple args to a bytestream."""
65
 
    return '\x01'.join(args) + '\n'
 
65
    joined = '\x01'.join(args) + '\n'
 
66
    if type(joined) is unicode:
 
67
        # XXX: We should fix things so this never happens!  -AJB, 20100304
 
68
        mutter('response args contain unicode, should be only bytes: %r',
 
69
               joined)
 
70
        joined = joined.encode('ascii')
 
71
    return joined
66
72
 
67
73
 
68
74
class Requester(object):
1225
1231
                    if first_chunk is None:
1226
1232
                        first_chunk = chunk
1227
1233
                    self._write_prefixed_body(chunk)
 
1234
                    self.flush()
1228
1235
                    if 'hpssdetail' in debug.debug_flags:
1229
1236
                        # Not worth timing separately, as _write_func is
1230
1237
                        # actually buffered