diff --git a/src/utils/parseArgs.js b/src/utils/parseArgs.js index 94e7e6a..90c18c5 100644 --- a/src/utils/parseArgs.js +++ b/src/utils/parseArgs.js @@ -1,8 +1,9 @@ module.exports = (Core, args) => { const argsPtr = Core._malloc(args.length * Uint32Array.BYTES_PER_ELEMENT); args.forEach((s, idx) => { - const buf = Core._malloc(s.length + 1); - Core.writeAsciiToMemory(s, buf); + const sz = Core.lengthBytesUTF8(s) + 1; + const buf = Core._malloc(sz); + Core.stringToUTF8(s, buf, sz); Core.setValue(argsPtr + (Uint32Array.BYTES_PER_ELEMENT * idx), buf, 'i32'); }); return [args.length, argsPtr];