mirror of
https://github.com/littlefs-project/littlefs.git
synced 2025-10-30 04:02:29 +00:00
Added an assert for truthy-preserving bool conversions
This has caught enough people that an explicit assert is warranted. How littlefs, a c99 project, should be integrated with c89 projects is still an open question, but no one deserves to debug this sort of undetected casting issue. Found by johnernberg and XinStellaris
This commit is contained in:
parent
6a53d76e90
commit
aae897ffd0
6
lfs.c
6
lfs.c
@ -3905,6 +3905,12 @@ static int lfs_init(lfs_t *lfs, const struct lfs_config *cfg) {
|
||||
lfs->cfg = cfg;
|
||||
int err = 0;
|
||||
|
||||
// check that bool is a truthy-preserving type
|
||||
//
|
||||
// note the most common reason for this failure is a before-c99 compiler,
|
||||
// which littlefs currently does not support
|
||||
LFS_ASSERT((bool)0x80000000);
|
||||
|
||||
// validate that the lfs-cfg sizes were initiated properly before
|
||||
// performing any arithmetic logics with them
|
||||
LFS_ASSERT(lfs->cfg->read_size != 0);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user