Filesystem::sharedGet relied on a single fread() call to read the entire file.
Since fread() may return fewer bytes than requested, this could result in
truncated reads (often 8 KiB) even when the underlying file or stream
contains more data.
This change replaces the single fread() call with stream_get_contents()
to ensure the entire stream is read, and adds a regression test using a
custom stream wrapper that simulates partial reads.
Fixes #58418
Co-authored-by: Valery Smolyakov <valery.smolyakov@almus.app>