Skip to content

Commit 2f116e2

Browse files
lwext4: implement HenriChataing's fix for ext4_mount().
gkostka/lwext4#51
1 parent b3ebbca commit 2f116e2

1 file changed

Lines changed: 18 additions & 2 deletions

File tree

liblwext4/switch-lwext4-733b2c40d7121900e339bee8784977467a9fe8c9.patch

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -453,7 +453,7 @@ index d79febc..227b3a6 100644
453453
struct ext4_xattr_info {
454454
uint8_t name_index;
455455
diff --git a/src/ext4.c b/src/ext4.c
456-
index b270361..b548b18 100644
456+
index b270361..656940c 100644
457457
--- a/src/ext4.c
458458
+++ b/src/ext4.c
459459
@@ -34,24 +34,24 @@
@@ -499,6 +499,22 @@ index b270361..b548b18 100644
499499

500500

501501
#include <stdlib.h>
502+
@@ -391,7 +391,6 @@ int ext4_mount(const char *dev_name, const char *mount_point,
503+
for (size_t i = 0; i < CONFIG_EXT4_MOUNTPOINTS_COUNT; ++i) {
504+
if (!s_mp[i].mounted) {
505+
strcpy(s_mp[i].name, mount_point);
506+
- s_mp[i].mounted = 1;
507+
mp = &s_mp[i];
508+
break;
509+
}
510+
@@ -436,6 +435,7 @@ int ext4_mount(const char *dev_name, const char *mount_point,
511+
}
512+
513+
bd->fs = &mp->fs;
514+
+ mp->mounted = 1;
515+
return r;
516+
}
517+
502518
@@ -460,14 +460,13 @@ int ext4_umount(const char *mount_point)
503519
if (r != EOK)
504520
goto Finish;
@@ -511,7 +527,7 @@ index b270361..b548b18 100644
511527
r = ext4_block_fini(mp->fs.bdev);
512528
Finish:
513529
mp->fs.bdev->fs = NULL;
514-
+ memset(mp, 0, sizeof(struct ext4_mountpoint));
530+
+ memset(mp, 0, sizeof(struct ext4_mountpoint));
515531
return r;
516532
}
517533

0 commit comments

Comments
 (0)