fix(clippy): make clippy = host libs + riscv programs (shared PROGRAMS); libkos alloc spinlock (was unlocked across threads); keystore Account; gpu Rect; factory Entry; Default impls, let-chains, div_ceil, iter loops
This commit is contained in:
@@ -131,7 +131,9 @@ impl<B: BlockDevice> FileSystem for Ext4<B> {
|
||||
done += chunk;
|
||||
}
|
||||
|
||||
self.open_files[handle.raw() as usize].as_mut().map(|f| f.offset += done);
|
||||
if let Some(f) = self.open_files[handle.raw() as usize].as_mut() {
|
||||
f.offset += done;
|
||||
}
|
||||
Some(done)
|
||||
}
|
||||
|
||||
@@ -204,13 +206,12 @@ impl<B: BlockDevice> FileSystem for Ext4<B> {
|
||||
|
||||
fn close(&mut self, handle: FileHandle) {
|
||||
if handle.raw() as usize >= MAX_OPEN_FILES { return; }
|
||||
if let Some(file) = self.open_files[handle.raw() as usize].take() {
|
||||
if let Some(mut inode) = self.read_inode(file.inode_num) {
|
||||
if let Some(file) = self.open_files[handle.raw() as usize].take()
|
||||
&& let Some(mut inode) = self.read_inode(file.inode_num) {
|
||||
inode.size = file.size as u64;
|
||||
inode.block_data = file.block_data;
|
||||
self.write_inode(file.inode_num, &inode);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fn list_dir(&mut self, path: &[u8], entries: &mut [DirEntry]) -> Option<usize> {
|
||||
@@ -222,14 +223,13 @@ impl<B: BlockDevice> FileSystem for Ext4<B> {
|
||||
|
||||
let inode = self.read_inode(dir_inode_num)?;
|
||||
let count = dir::list_entries(&mut self.device, &self.sb, &inode, entries)?;
|
||||
for i in 0..count {
|
||||
if !entries[i].is_dir {
|
||||
let name = entries[i].name;
|
||||
if let Some(child_ino) = dir::find_entry(&mut self.device, &self.sb, &inode, name.as_bytes()) {
|
||||
if let Some(child) = self.read_inode(child_ino) {
|
||||
entries[i].size = child.size as usize;
|
||||
for entry in entries.iter_mut().take(count) {
|
||||
if !entry.is_dir {
|
||||
let name = entry.name;
|
||||
if let Some(child_ino) = dir::find_entry(&mut self.device, &self.sb, &inode, name.as_bytes())
|
||||
&& let Some(child) = self.read_inode(child_ino) {
|
||||
entry.size = child.size as usize;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Some(count)
|
||||
@@ -279,11 +279,10 @@ impl<B: BlockDevice> FileSystem for Ext4<B> {
|
||||
None => return false,
|
||||
};
|
||||
|
||||
if let Some(child_inode) = self.read_inode(child_inode_num) {
|
||||
if child_inode.is_dir() {
|
||||
if let Some(child_inode) = self.read_inode(child_inode_num)
|
||||
&& child_inode.is_dir() {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
let parent_inode = match self.read_inode(parent_inode_num) {
|
||||
Some(i) => i,
|
||||
@@ -299,11 +298,10 @@ impl<B: BlockDevice> FileSystem for Ext4<B> {
|
||||
self.clear_inode(child_inode_num);
|
||||
self.free_inode(child_inode_num);
|
||||
for slot in self.open_files.iter_mut() {
|
||||
if let Some(f) = slot {
|
||||
if f.inode_num == child_inode_num {
|
||||
if let Some(f) = slot
|
||||
&& f.inode_num == child_inode_num {
|
||||
*slot = None;
|
||||
}
|
||||
}
|
||||
}
|
||||
true
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user