mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-04-26 14:28:49 +00:00
Implement utime() along with a naive /bin/touch.
This synchronous approach to inodes is silly, obviously. I need to rework it so that the in-memory CoreInode object is the canonical inode, and then we just need a sync() that flushes pending changes to disk.
This commit is contained in:
parent
e03d341615
commit
038d8641f9
Notes:
sideshowbarker
2024-07-19 16:08:06 +09:00
Author: https://github.com/awesomekling
Commit: 038d8641f9
22 changed files with 122 additions and 22 deletions
|
@ -716,16 +716,18 @@ bool Ext2FS::modify_link_count(InodeIndex inode, int delta)
|
|||
return write_ext2_inode(inode, *e2inode);
|
||||
}
|
||||
|
||||
bool Ext2FS::set_mtime(InodeIdentifier inode, dword timestamp)
|
||||
int Ext2FS::set_atime_and_mtime(InodeIdentifier inode, dword atime, dword mtime)
|
||||
{
|
||||
ASSERT(inode.fsid() == id());
|
||||
|
||||
auto e2inode = lookup_ext2_inode(inode.index());
|
||||
if (!e2inode)
|
||||
return false;
|
||||
return -EIO;
|
||||
|
||||
kprintf("changing inode %u mtime from %u to %u\n", inode.index(), e2inode->i_mtime, timestamp);
|
||||
e2inode->i_mtime = timestamp;
|
||||
dbgprintf("changing inode %u atime from %u to %u\n", inode.index(), e2inode->i_atime, atime);
|
||||
dbgprintf("changing inode %u mtime from %u to %u\n", inode.index(), e2inode->i_mtime, mtime);
|
||||
e2inode->i_mtime = mtime;
|
||||
e2inode->i_atime = atime;
|
||||
|
||||
return write_ext2_inode(inode.index(), *e2inode);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue