From 97b80db250bc368bad86cc8a6c2f8dee5f781238 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Sat, 31 Mar 2012 14:24:22 +0200 Subject: [PATCH] Fixed a possible KDL; the inode might be NULL. * This happens in case the inode could not be opened in the first place. --- src/add-ons/kernel/file_systems/bfs/BlockAllocator.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/add-ons/kernel/file_systems/bfs/BlockAllocator.cpp b/src/add-ons/kernel/file_systems/bfs/BlockAllocator.cpp index 51877b7b15..8481897208 100644 --- a/src/add-ons/kernel/file_systems/bfs/BlockAllocator.cpp +++ b/src/add-ons/kernel/file_systems/bfs/BlockAllocator.cpp @@ -2052,8 +2052,10 @@ BlockAllocator::_FreeIndices() { for (int32 i = 0; i < fCheckCookie->indices.CountItems(); i++) { check_index* index = fCheckCookie->indices.Array()[i]; - put_vnode(fVolume->FSVolume(), - fVolume->ToVnode(index->inode->BlockRun())); + if (index->inode != NULL) { + put_vnode(fVolume->FSVolume(), + fVolume->ToVnode(index->inode->BlockRun())); + } } fCheckCookie->indices.MakeEmpty(); }