aboutsummaryrefslogtreecommitdiff
path: root/py/stream.c
diff options
context:
space:
mode:
authorPaul Sokolovsky <pfalcon@users.sourceforge.net>2016-05-20 21:16:58 +0300
committerPaul Sokolovsky <pfalcon@users.sourceforge.net>2016-05-20 21:18:49 +0300
commit497660fcda77ae819f5ea1f6a92b8fb5006d8213 (patch)
treee26d3b20a46758f206b4e70d598f4c9daf423dcb /py/stream.c
parentf9dc644017a03c5dac5c0798e4c45310b8cfc8e8 (diff)
py/stream: Add mp_stream_close() helper function.
Diffstat (limited to 'py/stream.c')
-rw-r--r--py/stream.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/py/stream.c b/py/stream.c
index 9b1d5fd2d..ebdbe26b4 100644
--- a/py/stream.c
+++ b/py/stream.c
@@ -31,6 +31,7 @@
#include "py/nlr.h"
#include "py/objstr.h"
#include "py/stream.h"
+#include "py/runtime.h"
#if MICROPY_STREAMS_NON_BLOCK
#include <errno.h>
@@ -104,6 +105,13 @@ const mp_stream_p_t *mp_get_stream_raise(mp_obj_t self_in, int flags) {
return stream_p;
}
+mp_obj_t mp_stream_close(mp_obj_t stream) {
+ // TODO: Still consider using ioctl for close
+ mp_obj_t dest[2];
+ mp_load_method(stream, MP_QSTR_close, dest);
+ return mp_call_method_n_kw(0, 0, dest);
+}
+
STATIC mp_obj_t stream_read_generic(size_t n_args, const mp_obj_t *args, byte flags) {
const mp_stream_p_t *stream_p = mp_get_stream_raise(args[0], MP_STREAM_OP_READ);