Skip to content

Commit 4e3f05a

Browse files
fix: handle mmap offset
1 parent 9de3bd4 commit 4e3f05a

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

src/library_syscall.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -69,9 +69,9 @@ var SyscallsLibrary = {
6969
{{{ makeSetValue('buf', C_STRUCTS.stat.st_ino, 'stat.ino', 'i64') }}};
7070
return 0;
7171
},
72-
doMsync: function(addr, stream, len, flags) {
72+
doMsync: function(addr, stream, len, flags, offset) {
7373
var buffer = new Uint8Array(HEAPU8.subarray(addr, addr + len));
74-
FS.msync(stream, buffer, 0, len, flags);
74+
FS.msync(stream, buffer, offset, len, flags);
7575
},
7676
doMkdir: function(path, mode) {
7777
// remove a trailing slash, if one - /a/b/ has basename of '', but
@@ -254,7 +254,7 @@ var SyscallsLibrary = {
254254
ptr = res.ptr;
255255
allocated = res.allocated;
256256
}
257-
SYSCALLS.mappings[ptr] = { malloc: ptr, len: len, allocated: allocated, fd: fd, flags: flags };
257+
SYSCALLS.mappings[ptr] = { malloc: ptr, len: len, allocated: allocated, fd: fd, flags: flags, offset: off };
258258
return ptr;
259259
},
260260

@@ -272,7 +272,7 @@ var SyscallsLibrary = {
272272
if (!info) return 0;
273273
if (len === info.len) {
274274
var stream = FS.getStream(info.fd);
275-
SYSCALLS.doMsync(addr, stream, len, info.flags);
275+
SYSCALLS.doMsync(addr, stream, len, info.flags, info.offset);
276276
FS.munmap(stream);
277277
SYSCALLS.mappings[addr] = null;
278278
if (info.allocated) {

0 commit comments

Comments
 (0)