From 13249ba0562121d0adfa40f1d35c416fd17de04f Mon Sep 17 00:00:00 2001 From: Augustin Cavalier Date: Mon, 2 Sep 2019 15:04:31 -0400 Subject: [PATCH] ramfs: Fix dereference before NULL check in _DoCacheIO. Should fix a KDL extrowerk ran into. --- src/add-ons/kernel/file_systems/ramfs/DataContainer.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/add-ons/kernel/file_systems/ramfs/DataContainer.cpp b/src/add-ons/kernel/file_systems/ramfs/DataContainer.cpp index b8081856f6..61f1107da1 100644 --- a/src/add-ons/kernel/file_systems/ramfs/DataContainer.cpp +++ b/src/add-ons/kernel/file_systems/ramfs/DataContainer.cpp @@ -239,7 +239,8 @@ DataContainer::_DoCacheIO(const off_t offset, uint8* buffer, ssize_t length, while (length > 0) { vm_page* page = pages[index]; - phys_addr_t at = (page->physical_page_number * B_PAGE_SIZE); + phys_addr_t at = (page != NULL) + ? (page->physical_page_number * B_PAGE_SIZE) : 0; ssize_t bytes = B_PAGE_SIZE; if (index == 0) { const uint32 pageoffset = (offset % B_PAGE_SIZE);