Skip to content

Commit 47f8a21

Browse files
authored
[WasmFS] Cleanup FS.read/write (#23908)
1 parent 785933e commit 47f8a21

File tree

1 file changed

+4
-7
lines changed

1 file changed

+4
-7
lines changed

src/lib/libwasmfs.js

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -195,13 +195,12 @@ addToLibrary({
195195
} else {
196196
bytesRead = __wasmfs_read(stream.fd, dataBuffer, length);
197197
}
198-
for (var i = 0; i < bytesRead; i++) {
199-
buffer[offset + i] = {{{ makeGetValue('dataBuffer', 'i', 'i8')}}}
198+
if (bytesRead > 0) {
199+
buffer.set(HEAPU8.subarray(dataBuffer, dataBuffer + bytesRead), offset);
200200
}
201201

202202
_free(dataBuffer);
203-
bytesRead = FS.handleError(bytesRead);
204-
return bytesRead;
203+
return FS.handleError(bytesRead);
205204
},
206205
// Note that canOwn is an optimization that we ignore for now in WasmFS.
207206
write(stream, buffer, offset, length, position, canOwn) {
@@ -219,9 +218,7 @@ addToLibrary({
219218
bytesRead = __wasmfs_write(stream.fd, dataBuffer, length);
220219
}
221220
_free(dataBuffer);
222-
bytesRead = FS.handleError(bytesRead);
223-
224-
return bytesRead;
221+
return FS.handleError(bytesRead);
225222
},
226223
writeFile: (path, data) => FS_writeFile(path, data),
227224
mmap: (stream, length, offset, prot, flags) => {

0 commit comments

Comments
 (0)