Skip to content

Buffer write* silently sets 0 instead of failing for wrong values #1161

@unbornchikken

Description

@unbornchikken

Repro:

> var b = new Buffer(6);
undefined
> b.writeUInt32LE(10, 0);
4
> b.readUInt32LE(0)
10
> b.writeUInt32LE("5", 0);
4
> b.readUInt32LE(0)
5
> b.writeUInt32LE({}, 0);
4
> b.readUInt32LE(0)
0
> b.writeUInt32LE({}, 0, false);
4
> b.readUInt32LE(0)
0

According to this: https://iojs.org/api/buffer.html#buffer_buf_writeint32le_value_offset_noassert, the last three writes should be failed, because value is not a valid integer.

Metadata

Metadata

Assignees

Labels

bufferIssues and PRs related to the buffer subsystem.

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions