aboutsummaryrefslogtreecommitdiff
path: root/src/blocks/fs.c
diff options
context:
space:
mode:
authorFederico Angelilli <code@fedang.net>2024-11-16 03:04:47 +0100
committerFederico Angelilli <code@fedang.net>2024-11-16 03:04:47 +0100
commit43fb3ac0b3f25cf1cc8aa0624b883ad372a5da95 (patch)
tree588d1e5e5b92cca3bde6594aa7c107084e21a2c8 /src/blocks/fs.c
parent7d2b6ded634ef926cd6baf25dd8e89db7e45c7c2 (diff)
Handle errors without assert
Diffstat (limited to 'src/blocks/fs.c')
-rw-r--r--src/blocks/fs.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/blocks/fs.c b/src/blocks/fs.c
index 7cd3bc8..74f8962 100644
--- a/src/blocks/fs.c
+++ b/src/blocks/fs.c
@@ -26,7 +26,13 @@ static void block_fs_update(block_t *block)
block_fs_t *fs = (block_fs_t *)block;
struct statvfs sbuf;
- assert(statvfs(fs->path, &sbuf) == 0);
+ if (statvfs(fs->path, &sbuf) < 0) {
+ log_value_debug("Failed to read filesystem",
+ "s:label", block->label,
+ "s:path", fs->path,
+ "i:errno", errno);
+ return;
+ }
static const char *fs_formats[] = {
"total",
@@ -94,7 +100,7 @@ static bool block_fs_validate(block_t *block, const block_scheme_t *scheme)
}
fs->format = fs->block.text;
- fs->block.text = NULL;
+ fs->block.text = strcopy("?");
return true;
}