From 053f9bcdda2a11ccdc168e885bf4f04a034d947f Mon Sep 17 00:00:00 2001 From: AngryProton <38059101+AngryProton@users.noreply.github.com> Date: Mon, 29 Dec 2025 14:44:01 +0800 Subject: [PATCH] =?UTF-8?q?[fix][blk]=E8=A7=A3=E5=86=B3=E5=9D=97=E8=AE=BE?= =?UTF-8?q?=E5=A4=87=E5=86=99=E5=85=A5=E4=B8=8D=E5=AF=B9=E9=BD=90=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E5=A4=B1=E8=B4=A5=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/drivers/block/blk_dfs.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/components/drivers/block/blk_dfs.c b/components/drivers/block/blk_dfs.c index 96800e15643..adc6a81e466 100644 --- a/components/drivers/block/blk_dfs.c +++ b/components/drivers/block/blk_dfs.c @@ -175,14 +175,18 @@ static ssize_t blk_fops_write(struct dfs_file *file, const void *buf, size_t cou if ((count - wsize) / bytes_per_sector != 0) { res = rt_device_write(dev, blk_pos, buf + wsize, (count - wsize) / bytes_per_sector); - wsize += res * bytes_per_sector; - blk_pos += res; if (res != (count - wsize) / bytes_per_sector) { + wsize += res * bytes_per_sector; *pos += wsize; return wsize; } + else + { + wsize += res * bytes_per_sector; + blk_pos += res; + } } /*