1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-29 16:16:38 +00:00

Implement get_length() for pipes.

This commit is contained in:
Pāvels Nadtočajevs
2025-02-03 10:55:17 +02:00
parent f60f69aa57
commit e6e108d091
6 changed files with 21 additions and 4 deletions

View File

@@ -102,6 +102,14 @@ String FileAccessWindowsPipe::get_path_absolute() const {
return path_src;
}
uint64_t FileAccessWindowsPipe::get_length() const {
ERR_FAIL_COND_V_MSG(fd[0] == nullptr, -1, "Pipe must be opened before use.");
DWORD buf_rem = 0;
ERR_FAIL_COND_V(!PeekNamedPipe(fd[0], nullptr, 0, nullptr, &buf_rem, nullptr), 0);
return buf_rem;
}
uint64_t FileAccessWindowsPipe::get_buffer(uint8_t *p_dst, uint64_t p_length) const {
ERR_FAIL_COND_V_MSG(fd[0] == nullptr, -1, "Pipe must be opened before use.");
ERR_FAIL_COND_V(!p_dst && p_length > 0, -1);