summaryrefslogtreecommitdiffstatshomepage
path: root/stmhal/file.c
diff options
context:
space:
mode:
authorblmorris <bryan.morrissey@gmail.com>2014-07-21 12:47:57 -0400
committerblmorris <bryan.morrissey@gmail.com>2014-07-21 12:47:57 -0400
commit4038f513ea0a6be75ecbc4d8ab2bbe2349524bca (patch)
tree2aace8a3551d5c397ec539865bbb2f6cdbc8d900 /stmhal/file.c
parent0f4ee2e44a1e47258a8b07fb25e28286d131390c (diff)
parent951ed9d02ffc826c68ee3af26c3530477e7e6156 (diff)
downloadmicropython-4038f513ea0a6be75ecbc4d8ab2bbe2349524bca.tar.gz
micropython-4038f513ea0a6be75ecbc4d8ab2bbe2349524bca.zip
Merge https://github.com/micropython/micropython
Diffstat (limited to 'stmhal/file.c')
-rw-r--r--stmhal/file.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/stmhal/file.c b/stmhal/file.c
index 2d33a8f7b4..c1a2924903 100644
--- a/stmhal/file.c
+++ b/stmhal/file.c
@@ -41,7 +41,7 @@ extern const mp_obj_type_t mp_type_fileio;
extern const mp_obj_type_t mp_type_textio;
// this table converts from FRESULT to POSIX errno
-STATIC const byte fresult_to_errno_table[] = {
+const byte fresult_to_errno_table[20] = {
[FR_OK] = 0,
[FR_DISK_ERR] = EIO,
[FR_INT_ERR] = EIO,
@@ -95,6 +95,13 @@ STATIC mp_int_t file_obj_write(mp_obj_t self_in, const void *buf, mp_uint_t size
return sz_out;
}
+STATIC mp_obj_t file_obj_flush(mp_obj_t self_in) {
+ pyb_file_obj_t *self = self_in;
+ f_sync(&self->fp);
+ return mp_const_none;
+}
+STATIC MP_DEFINE_CONST_FUN_OBJ_1(file_obj_flush_obj, file_obj_flush);
+
mp_obj_t file_obj_close(mp_obj_t self_in) {
pyb_file_obj_t *self = self_in;
f_close(&self->fp);
@@ -218,6 +225,7 @@ STATIC const mp_map_elem_t rawfile_locals_dict_table[] = {
{ MP_OBJ_NEW_QSTR(MP_QSTR_readline), (mp_obj_t)&mp_stream_unbuffered_readline_obj},
{ MP_OBJ_NEW_QSTR(MP_QSTR_readlines), (mp_obj_t)&mp_stream_unbuffered_readlines_obj},
{ MP_OBJ_NEW_QSTR(MP_QSTR_write), (mp_obj_t)&mp_stream_write_obj },
+ { MP_OBJ_NEW_QSTR(MP_QSTR_flush), (mp_obj_t)&file_obj_flush_obj },
{ MP_OBJ_NEW_QSTR(MP_QSTR_close), (mp_obj_t)&file_obj_close_obj },
{ MP_OBJ_NEW_QSTR(MP_QSTR_seek), (mp_obj_t)&file_obj_seek_obj },
{ MP_OBJ_NEW_QSTR(MP_QSTR_tell), (mp_obj_t)&file_obj_tell_obj },