mirror of
				https://github.com/eledio-devices/thirdparty-littlefs.git
				synced 2025-10-31 00:32:38 +01:00 
			
		
		
		
	More testing progress, combined dir/commit traversal
Passing more tests now with the journalling change, but still have more work to do. The most humorous bug was a bug where during the three step move process, the entry move logic would dumbly copy over any tags associated with the moving entry, including the tag used to temporarily mark the entry as "moving". Also combined dir and commit traversal using a "stop_at_commit" flag in directory struct as a short-term hack to combine the code paths.
This commit is contained in:
		
							
								
								
									
										6
									
								
								lfs.h
									
									
									
									
									
								
							
							
						
						
									
										6
									
								
								lfs.h
									
									
									
									
									
								
							| @@ -114,6 +114,11 @@ enum lfs_type { | ||||
|     LFS_STRUCT_INLINE   = 0x000, | ||||
|     LFS_STRUCT_CTZ      = 0x004, | ||||
|     LFS_STRUCT_DIR      = 0x008, | ||||
|  | ||||
|     // internal sources | ||||
|     LFS_FROM_REGION     = 0x000, | ||||
|     LFS_FROM_DISK       = 0x001, | ||||
|     LFS_FROM_MOVE       = 0x002, | ||||
| }; | ||||
|  | ||||
| // File open flags | ||||
| @@ -313,6 +318,7 @@ typedef struct lfs_dir { | ||||
|     uint16_t count; | ||||
|     bool erased; | ||||
|     bool split; | ||||
|     bool stop_at_commit; // TODO hmmm | ||||
|     int16_t moveid; | ||||
|  | ||||
|     uint16_t id; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user