Closed Bug 1644600 Opened 2 years ago Closed 1 year ago

SharedArrayRawBufferRefs is not exported

Categories

(Core :: JavaScript Engine, defect, P3)

defect

Tracking

()

RESOLVED FIXED
90 Branch
Tracking Status
firefox-esr78 --- fixed
firefox90 --- fixed

People

(Reporter: sfink, Assigned: mail)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

Reported on the mailing list. SharedArrayRawBufferRefs is not marked JS_PUBLIC_API but is a member of JSStructuredCloneData which is JS_PUBLIC_API.

This defect prevents external embedders to use Spidermonkey C++ StructuredClone API. Observed since ESR version 60.

This is still bugged in SM78. It'd be good to fix it for the next ESR - we currently have to ask distributions to apply this patch, which is rather annoying.

I can confirm this is still the case, the only workaround is leaking right now...

This is used by StructuredClone and if it is not exported it's not
possible to get linking done.

JSStructuredCloneData::~JSStructuredCloneData()':
/usr/include/mozjs-78/js/StructuredClone.h:459:
undefined reference to
`js::SharedArrayRawBufferRefs::~SharedArrayRawBufferRefs()

Assignee: nobody → mail
Status: NEW → ASSIGNED
Attachment #9219903 - Attachment description: Bug 1644600 - Mark SharedArrayRawBufferRefs as public API r?#build → Bug 1644600 - Move JSStructuredCloneData destructor into private impl r?sfink
Pushed by sfink@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/a32d15411ed3
Move JSStructuredCloneData destructor into private impl r=sfink

ESR Uplift Approval Request

  • If this is not a sec:{high,crit} bug, please state case for ESR consideration: This patch makes possible that a public API is usable by embedders
  • User impact if declined: No impact to Firefox. Embedders will need to wait for the next ESR upgrade if they want to use JSStructuredCloneData API.
  • Fix Landed on Version: 90
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): This is low risk because it won't change anything for Firefox
  • String or UUID changes made by this patch: None

Comment on attachment 9219903 [details]
Bug 1644600 - Move JSStructuredCloneData destructor into private impl r?sfink

ESR Uplift Approval Request

  • If this is not a sec:{high,crit} bug, please state case for ESR consideration:
  • User impact if declined:
  • Fix Landed on Version:
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky):
  • String or UUID changes made by this patch:
Attachment #9219903 - Flags: approval-mozilla-esr78?
Status: ASSIGNED → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 90 Branch

Comment on attachment 9219903 [details]
Bug 1644600 - Move JSStructuredCloneData destructor into private impl r?sfink

Approved for 78.11esr. I guess we're not worried about uplifting to Beta for Fx89 since this only affects SM embedders anyway.

Attachment #9219903 - Flags: approval-mozilla-esr78? → approval-mozilla-esr78+
You need to log in before you can comment on or make changes to this bug.