mirror of
https://github.com/bobranten/Ext4Fsd.git
synced 2026-03-20 07:04:07 -05:00
added a initialize_dirent_tail
This commit is contained in:
@@ -640,9 +640,15 @@ NTSTATUS Ext2AddDotEntries(struct ext2_icb *icb, struct inode *dir,
|
|||||||
{
|
{
|
||||||
struct ext3_dir_entry_2 * de;
|
struct ext3_dir_entry_2 * de;
|
||||||
struct buffer_head * bh;
|
struct buffer_head * bh;
|
||||||
|
struct ext4_dir_entry_tail *t;
|
||||||
ext3_lblk_t block = 0;
|
ext3_lblk_t block = 0;
|
||||||
|
unsigned int blocksize = dir->i_sb->s_blocksize;
|
||||||
|
int csum_size = 0;
|
||||||
int rc = 0;
|
int rc = 0;
|
||||||
|
|
||||||
|
if (ext4_has_metadata_csum(dir->i_sb))
|
||||||
|
csum_size = sizeof(struct ext4_dir_entry_tail);
|
||||||
|
|
||||||
bh = ext3_append(icb, inode, &block, &rc);
|
bh = ext3_append(icb, inode, &block, &rc);
|
||||||
if (!bh) {
|
if (!bh) {
|
||||||
goto errorout;
|
goto errorout;
|
||||||
@@ -662,6 +668,10 @@ NTSTATUS Ext2AddDotEntries(struct ext2_icb *icb, struct inode *dir,
|
|||||||
strcpy (de->name, "..");
|
strcpy (de->name, "..");
|
||||||
ext3_set_de_type(inode->i_sb, de, S_IFDIR);
|
ext3_set_de_type(inode->i_sb, de, S_IFDIR);
|
||||||
inode->i_nlink = 2;
|
inode->i_nlink = 2;
|
||||||
|
if (csum_size) {
|
||||||
|
t = EXT4_DIRENT_TAIL(bh->b_data, blocksize);
|
||||||
|
initialize_dirent_tail(t, blocksize);
|
||||||
|
}
|
||||||
set_buffer_dirty(bh);
|
set_buffer_dirty(bh);
|
||||||
ext3_mark_inode_dirty(icb, inode);
|
ext3_mark_inode_dirty(icb, inode);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user