diff --git a/common/fs/file.s2.c b/common/fs/file.s2.c index f58dfaf4..436e33fe 100644 --- a/common/fs/file.s2.c +++ b/common/fs/file.s2.c @@ -106,6 +106,10 @@ void *freadall(struct file_handle *fd, uint32_t type) { } else { void *ret = ext_mem_alloc_type(fd->size, type); fd->read(fd, ret, 0, fd->size); + fd->close(fd); + fd->is_memfile = true; + fd->readall = true; + fd->fd = ret; return ret; } }