| 99 | } |
| 100 | |
| 101 | size_t FileStream::write(const uint8_t* buffer, size_t size) |
| 102 | { |
| 103 | GET_FS(0) |
| 104 | |
| 105 | if(pos != this->size) { |
| 106 | int writePos = fs->lseek(handle, 0, SeekOrigin::End); |
| 107 | if(!check(writePos)) { |
| 108 | return 0; |
| 109 | } |
| 110 | |
| 111 | pos = size_t(writePos); |
| 112 | } |
| 113 | |
| 114 | int written = fs->write(handle, buffer, size); |
| 115 | if(check(written)) { |
| 116 | pos += size_t(written); |
| 117 | this->size = pos; |
| 118 | } |
| 119 | |
| 120 | return written > 0 ? written : 0; |
| 121 | } |
| 122 | |
| 123 | int FileStream::seekFrom(int offset, SeekOrigin origin) |
| 124 | { |