From e06d0023087a5de617611353471c908ff6c825c8 Mon Sep 17 00:00:00 2001 From: Asakura Mizu Date: Tue, 11 Mar 2025 14:00:04 +0800 Subject: [PATCH] upgrade axio --- Cargo.lock | 4 ++-- modules/axfs/Cargo.toml | 2 +- modules/axfs/src/api/file.rs | 11 ++++++++++- 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 7b7951cde7..cda4701bd7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -489,9 +489,9 @@ dependencies = [ [[package]] name = "axio" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8ca9c10ea4cd42bda87a2abde281fb481c76a0b05976fd03697385ea65d5122" +checksum = "30aa258a37c25c5e9d3ff45ec80e728ff7c499586e3e40719daf7908f10fd5bd" dependencies = [ "axerrno", ] diff --git a/modules/axfs/Cargo.toml b/modules/axfs/Cargo.toml index a40b2c6452..ce34ea06ff 100644 --- a/modules/axfs/Cargo.toml +++ b/modules/axfs/Cargo.toml @@ -26,7 +26,7 @@ log = "=0.4.21" cfg-if = "1.0" lazyinit = "0.2" cap_access = "0.1" -axio = { version = "0.1", features = ["alloc"] } +axio = { version = "0.1.1", features = ["alloc"] } axerrno = "0.1" axfs_vfs = "0.1" spin = "0.9" diff --git a/modules/axfs/src/api/file.rs b/modules/axfs/src/api/file.rs index eec1698548..1a3afe0882 100644 --- a/modules/axfs/src/api/file.rs +++ b/modules/axfs/src/api/file.rs @@ -1,4 +1,5 @@ -use axio::{Result, SeekFrom, prelude::*}; +use alloc::vec::Vec; +use axio::{Result, SeekFrom, default_read_to_end, prelude::*}; use core::fmt; use crate::fops; @@ -174,6 +175,14 @@ impl Read for File { fn read(&mut self, buf: &mut [u8]) -> Result { self.inner.read(buf) } + + fn read_to_end(&mut self, buf: &mut Vec) -> Result { + default_read_to_end( + self, + buf, + self.metadata().ok().map(|metadata| metadata.size() as _), + ) + } } impl Write for File {