Undo instanceof Buffer changes
#155
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
It turns out that it's not possible to use
instanceof Buffersafely, like I thought.It's not possible to use
instanceof Bufferreliably in a browserify context because there could be multiple different copies of the 'buffer' package in use.This previous method (checking
buf._isBuffer) works even for Buffer instances that were created from another copy of thebufferpackage.NOTE: It's possible to have two different "instances" of the 'buffer' package, even if the 'buffer' package appears only once in the bundled code. This can happen if you require 'buffer' in different ways, for example:
require('buffer')vs.require('buffer/')vs. using the implicitBufferglobal.You can confirm this by browserifying this code:
So, for this reason,
instanceofwon't work.Fixes: #154