Use 'io.BytesIO' rather than 'cStringIO.StringIO'.

pull/166/head
Tres Seaver 10 years ago
parent d25e6686d9
commit 47ee4d37c1
  1. 2
      python/google/protobuf/internal/encoder.py
  2. 4
      python/google/protobuf/text_format.py

@ -43,7 +43,7 @@ FieldDescriptor) we construct two functions: a "sizer" and an "encoder". The
sizer takes a value of this field's type and computes its byte size. The
encoder takes a writer function and a value. It encodes the value into byte
strings and invokes the writer function to write those strings. Typically the
writer function is the write() method of a cStringIO.
writer function is the write() method of a BytesIO.
We try to do as much work as possible when constructing the writer and the
sizer rather than when calling them. In particular:

@ -34,7 +34,7 @@
__author__ = 'kenton@google.com (Kenton Varda)'
import cStringIO
import io
import re
import six
@ -89,7 +89,7 @@ def MessageToString(message, as_utf8=False, as_one_line=False,
Returns:
A string of the text formatted protocol buffer message.
"""
out = cStringIO.StringIO()
out = io.BytesIO()
PrintMessage(message, out, as_utf8=as_utf8, as_one_line=as_one_line,
pointy_brackets=pointy_brackets,
use_index_order=use_index_order,

Loading…
Cancel
Save