buffer-browserify icon indicating copy to clipboard operation
buffer-browserify copied to clipboard

Buffer.isBuffer returns false for Buffers

Open thlorenz opened this issue 11 years ago • 3 comments

I ran into this while writing a browser side Writable Stream. The problem is basically that Buffer.isBuffer(buf) returns false although it is one. This is due to buf instanceof Buffer returning false -- I tried this in the browser console as well.

I commented on my workaround here.

You could use this project as a test bed, i.e.:

npm install d3-gauge-writable
npm explore d3-gauge-writable
npm start

You should then be able to debug into d3-gauge-writable assuming you enabled source maps on your browser.

thlorenz avatar Sep 27 '13 03:09 thlorenz

@toots Any chance of getting this fixed? I'm currently having to manually change Buffer.isBuffer() to use util.isBuffer()'s logic (similar to @thlorenz's workaround) because require('stream').Readable uses Buffer.isBuffer() in chunkInvalid() and that always fails with the current Buffer.isBuffer() implementation.

mscdex avatar Nov 02 '13 02:11 mscdex

Hi guys. Unfortunately, I don't have a lot of time to investigate this at the moment. I'd be happy to consider a PR, although I am concerned as to why buf instanceof Buffer isn't returning the expected value. Maybe there's something more important going on here..

toots avatar Nov 02 '13 15:11 toots

I think this may be related to substack/node-browserify#513 in which two copies of Buffer are injected into bundles.

mscdex avatar Nov 13 '13 22:11 mscdex