- From: Anne van Kesteren <notifications@github.com>
- Date: Fri, 14 Dec 2018 02:00:54 -0800
- To: whatwg/encoding <encoding@noreply.github.com>
- Cc: Subscribed <subscribed@noreply.github.com>
Received on Friday, 14 December 2018 10:01:20 UTC
@ricea I tried to rewrite your example for inclusion in the standard: ```js function convertString(buffer, input, callback) { let bufferSize = 256; let bufferStart = malloc(buffer, bufferSize); let bytesWritten = 0; let offset = 0; while (true) { const {read, written} = cachedEncoder.encodeInto(input.substring(offset), new Uint8Array(buffer, bytesStart + bytesWritten, bufferSize - bytesWritten)); offset += read; bytesWritten += written; if (offset === input.length) { callback(bufferStart, bytesWritten); free(buffer, bufferStart); return; } bufferSize *= 2; bufferStart = realloc(buffer, bufferStart, bufferSize); } } ``` For the length argument to Uint8Array, shouldn't bufferStart also be subtracted? (I also changed offset = read to offset += read. Better names welcome.) -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/whatwg/encoding/issues/69#issuecomment-447275930
Received on Friday, 14 December 2018 10:01:20 UTC