@@ -1272,6 +1272,7 @@ int lfs_mkdir(lfs_t *lfs, const char *path) {
1272
1272
1273
1273
cwd .d .tail [0 ] = dir .pair [0 ];
1274
1274
cwd .d .tail [1 ] = dir .pair [1 ];
1275
+ lfs_entry_tole32 (& entry .d );
1275
1276
err = lfs_dir_set (lfs , & cwd , & entry , (struct lfs_region []){
1276
1277
{LFS_FROM_MEM , 0 , 0 , & entry .d , sizeof (entry .d )},
1277
1278
{LFS_FROM_MEM , 0 , 0 , path , nlen }}, 2 );
@@ -1893,8 +1894,7 @@ int lfs_file_sync(lfs_t *lfs, lfs_file_t *file) {
1893
1894
}
1894
1895
1895
1896
lfs_entry_t entry = {.off = file -> pairoff };
1896
- err = lfs_dir_get (lfs , & cwd , entry .off , & entry .d , sizeof (entry .d ));
1897
- lfs_entry_fromle32 (& entry .d );
1897
+ err = lfs_dir_get (lfs , & cwd , entry .off , & entry .d , 4 );
1898
1898
if (err ) {
1899
1899
return err ;
1900
1900
}
@@ -1912,6 +1912,7 @@ int lfs_file_sync(lfs_t *lfs, lfs_file_t *file) {
1912
1912
entry .d .u .file .head = file -> head ;
1913
1913
entry .d .u .file .size = file -> size ;
1914
1914
1915
+ lfs_entry_tole32 (& entry .d );
1915
1916
buffer = (const uint8_t * )& entry .d + 4 ;
1916
1917
size = sizeof (entry .d ) - 4 ;
1917
1918
} else {
@@ -2249,7 +2250,7 @@ int lfs_file_getattrs(lfs_t *lfs, lfs_file_t *file,
2249
2250
}
2250
2251
2251
2252
lfs_entry_t entry = {.off = file -> pairoff };
2252
- err = lfs_dir_get (lfs , & cwd , entry .off , & entry .d , sizeof ( entry . d ) );
2253
+ err = lfs_dir_get (lfs , & cwd , entry .off , & entry .d , 4 );
2253
2254
if (err ) {
2254
2255
return err ;
2255
2256
}
@@ -2293,7 +2294,7 @@ int lfs_file_setattrs(lfs_t *lfs, lfs_file_t *file,
2293
2294
}
2294
2295
2295
2296
lfs_entry_t entry = {.off = file -> pairoff };
2296
- err = lfs_dir_get (lfs , & cwd , entry .off , & entry .d , sizeof ( entry . d ) );
2297
+ err = lfs_dir_get (lfs , & cwd , entry .off , & entry .d , 4 );
2297
2298
if (err ) {
2298
2299
return err ;
2299
2300
}
@@ -2740,7 +2741,7 @@ int lfs_mount(lfs_t *lfs, const struct lfs_config *cfg) {
2740
2741
}
2741
2742
2742
2743
lfs_entry_t entry = {.off = sizeof (dir .d )};
2743
- err = lfs_dir_get (lfs , & dir , entry .off , & entry .d , sizeof ( entry . d ) );
2744
+ err = lfs_dir_get (lfs , & dir , entry .off , & entry .d , 4 );
2744
2745
if (err ) {
2745
2746
return err ;
2746
2747
}
@@ -3005,6 +3006,7 @@ static int lfs_relocate(lfs_t *lfs,
3005
3006
// update disk, this creates a desync
3006
3007
entry .d .u .dir [0 ] = newpair [0 ];
3007
3008
entry .d .u .dir [1 ] = newpair [1 ];
3009
+ lfs_entry_tole32 (& entry .d );
3008
3010
int err = lfs_dir_set (lfs , & parent , & entry , (struct lfs_region []){
3009
3011
{LFS_FROM_MEM , 0 , sizeof (entry .d ),
3010
3012
& entry .d , sizeof (entry .d )}}, 1 );
@@ -3133,8 +3135,7 @@ int lfs_deorphan(lfs_t *lfs) {
3133
3135
entry .d .u .dir [0 ], entry .d .u .dir [1 ]);
3134
3136
entry .d .type &= ~LFS_STRUCT_MOVED ;
3135
3137
err = lfs_dir_set (lfs , & cwd , & entry , (struct lfs_region []){
3136
- {LFS_FROM_MEM , 0 , sizeof (entry .d ),
3137
- & entry .d , sizeof (entry .d )}}, 1 );
3138
+ {LFS_FROM_MEM , 0 , 1 , & entry .d , 1 }}, 1 );
3138
3139
if (err ) {
3139
3140
return err ;
3140
3141
}
@@ -3158,7 +3159,7 @@ int lfs_fs_getattrs(lfs_t *lfs, const struct lfs_attr *attrs, int count) {
3158
3159
}
3159
3160
3160
3161
lfs_entry_t entry = {.off = sizeof (dir .d )};
3161
- err = lfs_dir_get (lfs , & dir , entry .off , & entry .d , sizeof ( entry . d ) );
3162
+ err = lfs_dir_get (lfs , & dir , entry .off , & entry .d , 4 );
3162
3163
if (err ) {
3163
3164
return err ;
3164
3165
}
@@ -3175,7 +3176,7 @@ int lfs_fs_setattrs(lfs_t *lfs, const struct lfs_attr *attrs, int count) {
3175
3176
}
3176
3177
3177
3178
lfs_entry_t entry = {.off = sizeof (dir .d )};
3178
- err = lfs_dir_get (lfs , & dir , entry .off , & entry .d , sizeof ( entry . d ) );
3179
+ err = lfs_dir_get (lfs , & dir , entry .off , & entry .d , 4 );
3179
3180
if (err ) {
3180
3181
return err ;
3181
3182
}
0 commit comments