Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/littlefs-project/littlefs.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/lfs.h
diff options
context:
space:
mode:
authorChristopher Haster <chaster@utexas.edu>2018-10-07 21:47:29 +0300
committerChristopher Haster <chaster@utexas.edu>2018-10-20 20:34:11 +0300
commit97d8d5e96a7781596708664f18f2ea6c3a179330 (patch)
tree6baaa9d864d48b41833683234e86b6aa5668d136 /lfs.h
parent0bb1f7af17755bd792f0c4966877fb1886dfc802 (diff)
Fixed issue where a rename causes a split and pushes dir out of sync
The issue happens when a rename causes a split in the destination pair. If the destination pair is the same as the source pair, this triggers the logic to keep both pairs in sync. Unfortunately, this logic didn't work, because the source entry still resides in the old source pair, unlike the destination pair, which is now in the new pair created by the split. The best fix for now is to refetch the source pair after the changes to the destination pair. This isn't the most efficient solution, but fortunately this bug has already been fixed in the revamped move logic in littlefs v2 (currently in progress). Found by ohoc
Diffstat (limited to 'lfs.h')
-rw-r--r--lfs.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/lfs.h b/lfs.h
index 7dd3604..4b687f4 100644
--- a/lfs.h
+++ b/lfs.h
@@ -280,6 +280,7 @@ typedef struct lfs {
lfs_free_t free;
bool deorphaned;
+ bool moving;
} lfs_t;