MCPcopy Create free account
hub / github.com/MJx0/KittyMemoryEx / readToBuffer

Method readToBuffer

KittyMemoryEx/KittyIOFile.cpp:165–194  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

163 if (n <= 0)
164 break;
165
166 offset += n;
167 str->append(buffer.data(), n);
168 }
169
170 return _error == 0;
171}
172
173bool KittyIOFile::readToBuffer(std::vector<char> *buf)
174{
175 _error = 0;
176
177 if (!buf)
178 return false;
179
180 buf->clear();
181
182 auto s = info();
183 if (_error == 0 && s.st_size > 0)
184 {
185 buf->resize(static_cast<size_t>(s.st_size));
186 ssize_t n = pread(0, buf->data(), static_cast<size_t>(s.st_size));
187 if (n > 0)
188 {
189 if (n != static_cast<ssize_t>(s.st_size))
190 {
191 buf->resize(static_cast<size_t>(n));
192 }
193 return true;
194 }
195
196 buf->clear();
197 }

Callers 1

readFileToBufferMethod · 0.80

Calls 2

clearMethod · 0.80
endMethod · 0.80

Tested by

no test coverage detected