From 82775c4803da22b87c7b107c5b9caa7bd77fbf82 Mon Sep 17 00:00:00 2001 From: Jonas 'Sortie' Termansen Date: Thu, 8 Oct 2015 15:55:30 +0200 Subject: [PATCH] Fix extfs invalid block free on truncation. --- ext/inode.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ext/inode.cpp b/ext/inode.cpp index f3cd6166..8d0a39ab 100644 --- a/ext/inode.cpp +++ b/ext/inode.cpp @@ -372,6 +372,8 @@ void Inode::Truncate(uint64_t new_size) for ( uint64_t i = new_num_blocks; i < old_num_blocks && i < 12; i++ ) { + if ( !data->i_block[i] ) + continue; filesystem->FreeBlock(data->i_block[i]); data->i_block[i] = 0; }