mufs: extend tree in mufs_tree_write() rather than mufs_do_write()

tags/0.1.0
S.J.R. van Schaik 7 years ago
parent 08dda999cc
commit 07cd243603
  1. 6
      source/fs/mufs/tree.c

@ -256,9 +256,6 @@ static size_t mufs_do_write(struct mufs_tree *tree,
va = align(va, dev->log2_block_size);
len = min(len, (UINT32_C(1) << dev->log2_block_size) - offset);
if (mufs_extend_tree(tree, 1) < 0)
return 0;
if (mufs_alloc_page(tree, &page, va) < 0)
return 0;
@ -272,6 +269,9 @@ size_t mufs_tree_write(struct mufs_tree *tree, void *data,
uint8_t *buf = data;
size_t ret, nbytes = 0;
if (mufs_extend_tree(tree, 1) < 0)
return 0;
while (len) {
if ((ret = mufs_do_write(tree, buf, va, len)) == 0)
return nbytes;

Loading…
Cancel
Save