diff --git a/src/add-ons/kernel/file_systems/layers/write_overlay/write_overlay.cpp b/src/add-ons/kernel/file_systems/layers/write_overlay/write_overlay.cpp index 67f6557f6e..2f7c9d2d2a 100644 --- a/src/add-ons/kernel/file_systems/layers/write_overlay/write_overlay.cpp +++ b/src/add-ons/kernel/file_systems/layers/write_overlay/write_overlay.cpp @@ -468,6 +468,11 @@ status_t OverlayInode::Read(void *_cookie, off_t position, void *buffer, size_t *length, bool readPages) { + if (position >= fStat.st_size) { + *length = 0; + return B_OK; + } + uint8 *pointer = (uint8 *)buffer; write_buffer *element = fWriteBuffers; size_t bytesLeft = MIN(fStat.st_size - position, *length);