This commit is contained in:
Holly Stubbs 2024-11-26 15:22:51 +00:00
parent e91d10f694
commit 296e84b4cf
Signed by: tgpholly
GPG key ID: B8583C4B7D18119E
4 changed files with 11 additions and 7 deletions

View file

@ -32,6 +32,7 @@ export class WriterBase {
public writeBuffer(buffer:Buffer) {
this.buffer = getBufferClass().concat([this.buffer, buffer], this.buffer.length + buffer.length);
this.offset += buffer.length;
return this;
}

4
package-lock.json generated
View file

@ -1,12 +1,12 @@
{
"name": "bufferstuff",
"version": "1.7.0",
"version": "1.7.1",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "bufferstuff",
"version": "1.7.0",
"version": "1.7.1",
"license": "MIT",
"devDependencies": {
"check-outdated": "^2.12.0",

View file

@ -1,6 +1,6 @@
{
"name": "bufferstuff",
"version": "1.7.0",
"version": "1.7.1",
"description": "A set of utility classes for reading and writing binary data in NodeJS and the browser",
"main": "./lib/index.js",
"types": "./lib/index.d.ts",

View file

@ -174,18 +174,21 @@ export class WriterBE extends WriterBase implements IWriter {
}
public writeJavaUTF(text: string) {
this.writeUShort(text.length);
const dataWriter = new WriterBE();
for (let i = 0; i < text.length; i++) {
const val = text.charCodeAt(i);
if (val === 0) {
this.writeByte(0xC0);
this.writeByte(0X80);
dataWriter.writeByte(0xC0);
dataWriter.writeByte(0X80);
} else {
this.writeByte(val);
dataWriter.writeByte(val);
}
}
this.writeUShort(text.length);
this.writeBuffer(dataWriter.toBuffer());
return this;
}
}