Andreas Kling
a292d8cd5a
LibCore: Add CFileStreamReader, a simple streaming CFile reader.
...
This is extremely barebones right now, but can be used to easily read binary
data from a CFile piece by piece.
2019-07-27 16:38:44 +02:00
Andreas Kling
9ed7f4576b
CIODevice: Try to preallocate the exact needed buffer size in read_all().
...
If we can get the exact file size from fstat(), it's a very good idea to use
it since it means we avoid eleventy thousand reallocations.
2019-07-27 14:24:19 +02:00
Andreas Kling
8f4fba95c0
CIODevice: Add a virtual did_update_fd() no notify subclasses of fd change.
...
This will allow subclasses to react when the file descriptor changes.
2019-07-27 10:47:46 +02:00
Robin Burchell
f2c0e55070
Userspace: Deal with select() returning EINTR on a signal interruption
...
Add a trivial CSafeSyscall template that calls a callback until it stops
returning EINTR, and use it everywhere we use select() now.
Thanks to Andreas for the suggestion of using a template parameter for
the syscall function to invoke.
2019-07-21 14:27:14 +02:00
Andreas Kling
04b9dc2d30
Libraries: Create top level directory for libraries.
...
Things were getting a little crowded in the project root, so this patch
moves the Lib*/ directories into Libraries/.
2019-07-04 16:16:50 +02:00