MCPcopy Create free account
hub / github.com/devkitPro/libctru / romfs_read

Function romfs_read

libctru/source/romfs_dev.c:588–611  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

586}
587
588ssize_t romfs_read(struct _reent *r, void *fd, char *ptr, size_t len)
589{
590 romfs_fileobj* file = (romfs_fileobj*)fd;
591 u64 endPos = file->pos + len;
592
593 /* check if past end-of-file */
594 if(file->pos >= file->file->dataSize)
595 return 0;
596
597 /* truncate the read to end-of-file */
598 if(endPos > file->file->dataSize)
599 endPos = file->file->dataSize;
600 len = endPos - file->pos;
601
602 ssize_t adv = _romfs_read(file->mount, file->offset + file->pos, ptr, len);
603 if(adv >= 0)
604 {
605 file->pos += adv;
606 return adv;
607 }
608
609 r->_errno = EIO;
610 return -1;
611}
612
613off_t romfs_seek(struct _reent *r, void *fd, off_t pos, int dir)
614{

Callers

nothing calls this directly

Calls 1

_romfs_readFunction · 0.85

Tested by

no test coverage detected