From f5f6c3b7920457e99b71cf58cfb3cb0be0e4e890 Mon Sep 17 00:00:00 2001 From: Paul Sokolovsky <pfalcon@users.sourceforge.net> Date: Sun, 15 Jun 2014 23:23:36 +0300 Subject: [PATCH] streams: Reading by char count from unicode text streams is not implemented. --- py/stream.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/py/stream.c b/py/stream.c index 07a79248a..a5a96a868 100644 --- a/py/stream.c +++ b/py/stream.c @@ -33,6 +33,7 @@ #include "qstr.h" #include "obj.h" #include "objstr.h" +#include "runtime.h" #include "stream.h" #if MICROPY_STREAMS_NON_BLOCK #include <errno.h> @@ -67,6 +68,13 @@ STATIC mp_obj_t stream_read(uint n_args, const mp_obj_t *args) { if (n_args == 1 || ((sz = mp_obj_get_int(args[1])) == -1)) { return stream_readall(args[0]); } + + #if MICROPY_PY_BUILTINS_STR_UNICODE + if (!o->type->stream_p->is_bytes) { + mp_not_implemented("Reading from unicode text streams by character count"); + } + #endif + byte *buf = m_new(byte, sz); int error; machine_int_t out_sz = o->type->stream_p->read(o, buf, sz, &error); -- GitLab