Author: Brian Kearns <bdkea...@gmail.com> Branch: refactor-buffer-api Changeset: r70919:b0b180cf068a Date: 2014-04-23 23:33 -0400 http://bitbucket.org/pypy/pypy/changeset/b0b180cf068a/
Log: fix usage of bufferstr_w in _file diff --git a/pypy/module/_file/interp_file.py b/pypy/module/_file/interp_file.py --- a/pypy/module/_file/interp_file.py +++ b/pypy/module/_file/interp_file.py @@ -267,9 +267,14 @@ def direct_write(self, w_data): space = self.space - if not self.binary and space.isinstance_w(w_data, space.w_unicode): - w_data = space.call_method(w_data, "encode", space.wrap(self.encoding), space.wrap(self.errors)) - data = space.bufferstr_w(w_data) + if self.binary: + data = space.getarg_w('s*', w_data).as_str() + else: + if space.isinstance_w(w_data, space.w_unicode): + w_data = space.call_method(w_data, "encode", + space.wrap(self.encoding), + space.wrap(self.errors)) + data = space.charbuf_w(w_data) self.do_direct_write(data) def do_direct_write(self, data): _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit