load_section_mem now uses zero copy to receive binary data

This commit is contained in:
Ondřej Novák 2025-07-10 10:08:19 +02:00
parent 9a41bc0f67
commit 3463d8e720
9 changed files with 71 additions and 67 deletions

View file

@ -112,6 +112,15 @@ uint32_t temp_storage_read(void *data, uint32_t size, TMPFILE_RD *f) {
return static_cast<uint32_t>(p.size());
}
const void *temp_storage_get_binary(TMPFILE_RD *f, uint32_t size, uint32_t *retrieved) {
auto &d = f->_data;
if (size > d.size()) size = d.size();
const void *ret = d.data();
d = d.substr(size);
*retrieved = size;
return ret;
}
void temp_storage_skip(TMPFILE_RD *f, int bytes) {
auto &d = f->_data;
auto p = d.substr(0,bytes);