-
Notifications
You must be signed in to change notification settings - Fork 465
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Disable caching in ArrayBuffer #611
Conversation
fbf3354
to
6f1cd3e
Compare
Caching the data pointer and the byteLength in the ArrayBuffer class causes it to behave incorrectly when the buffer is detached.
6f1cd3e
to
25686d8
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@tniessen good catch. Could I ask you to add a forward declaration for ArrayBuffer
in napi.h
and place it after Array
?
Thanks for this contribution.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM seems reasonable to me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@tniessen Thanks
@NickNaso Done. May I ask why that is necessary? |
Caching the data pointer and the byteLength in the ArrayBuffer class causes it to behave incorrectly when the buffer is detached. PR-URL: #611 Reviewed-By: Nicola Del Gobbo <[email protected]> Reviewed-By: Michael Dawson <[email protected]>
Landed in b72f1d6. |
Caching the data pointer and the byteLength in the ArrayBuffer class causes it to behave incorrectly when the buffer is detached. PR-URL: nodejs/node-addon-api#611 Reviewed-By: Nicola Del Gobbo <[email protected]> Reviewed-By: Michael Dawson <[email protected]>
Caching the data pointer and the byteLength in the ArrayBuffer class causes it to behave incorrectly when the buffer is detached. PR-URL: nodejs/node-addon-api#611 Reviewed-By: Nicola Del Gobbo <[email protected]> Reviewed-By: Michael Dawson <[email protected]>
Caching the data pointer and the byteLength in the ArrayBuffer class causes it to behave incorrectly when the buffer is detached. PR-URL: nodejs/node-addon-api#611 Reviewed-By: Nicola Del Gobbo <[email protected]> Reviewed-By: Michael Dawson <[email protected]>
Caching the data pointer and the byteLength in the ArrayBuffer class causes it to behave incorrectly when the buffer is detached. PR-URL: nodejs/node-addon-api#611 Reviewed-By: Nicola Del Gobbo <[email protected]> Reviewed-By: Michael Dawson <[email protected]>
Caching the data pointer and the byteLength in the
ArrayBuffer
class causes it to behave incorrectly when the buffer is detached, as demonstrated by the test case. The current behavior is dangerous since it depends on whether theNapi::Value
was cast to anNapi::ArrayBuffer
before or after being detached.