aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorandroid-build-team Robot <android-build-team-robot@google.com>2017-08-09 07:30:58 +0000
committerandroid-build-team Robot <android-build-team-robot@google.com>2017-08-09 07:30:58 +0000
commit0165b1a1bf866226ffeac1bd97b2a565dc343ea6 (patch)
treebe4d8ac2b1b9cfbcde8353d9bf54fc54534c1c50
parent007a8337b3b599b8c196085d4822b9c46010994e (diff)
parent7adf0ece5792f0a3f3cb8bf1a9c1060b7de9c5cd (diff)
downloadandroid_external_e2fsprogs-0165b1a1bf866226ffeac1bd97b2a565dc343ea6.tar.gz
android_external_e2fsprogs-0165b1a1bf866226ffeac1bd97b2a565dc343ea6.tar.bz2
android_external_e2fsprogs-0165b1a1bf866226ffeac1bd97b2a565dc343ea6.zip
release-request-9ff446ef-fe26-4f50-a0f0-c1d38619140f-for-git_oc-mr1-release-4257899 snap-temp-L58400000090817127
Change-Id: Ifbed94aa5b023c2124fc9e8e977603104cadf398
-rw-r--r--e2fsck/pass1.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/e2fsck/pass1.c b/e2fsck/pass1.c
index ac4d5544..7c5ae4d5 100644
--- a/e2fsck/pass1.c
+++ b/e2fsck/pass1.c
@@ -1819,9 +1819,14 @@ void e2fsck_pass1(e2fsck_t ctx)
inode->i_block[EXT2_DIND_BLOCK] ||
inode->i_block[EXT2_TIND_BLOCK] ||
ext2fs_file_acl_block(fs, inode))) {
+ struct ext2_inode_large *ip;
+
inodes_to_process[process_inode_count].ino = ino;
- inodes_to_process[process_inode_count].inode =
- *(struct ext2_inode_large *)inode;
+ ip = &inodes_to_process[process_inode_count].inode;
+ if (inode_size < sizeof(struct ext2_inode_large))
+ memcpy(ip, inode, inode_size);
+ else
+ memcpy(ip, inode, sizeof(*ip));
process_inode_count++;
} else
check_blocks(ctx, &pctx, block_buf);