Make the AudioNode hierarchy not inherit from nsISupports

RESOLVED WONTFIX

Status

()

defect
RESOLVED WONTFIX
7 years ago
6 years ago

People

(Reporter: Ehsan, Unassigned)

Tracking

(Depends on 1 bug)

Trunk
x86
macOS
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

Reporter

Description

7 years ago
I have a patch to make AudioNode and its derived classes not inherit from nsISupports, and it seems to work.  I need this now because I don't want other node types carry around the nsISupports baggage.
Reporter

Updated

7 years ago
Blocks: webaudio
Reporter

Comment 1

7 years ago
Posted patch WIP patchSplinter Review
I got this to a point that it builds and doesn't crash when running tests, which is good.  Then I faced assertions like this: "ASSERTION: nsCycleCollectionParticipant shouldn't change!".  mccr8 tells me that I need to add a virtual GetParticipant function which returns the right type of participant based on the concrete type of the object, and that is on top of the virtual AddRef and Release methods that I had to add, so this is no longer worth doing in my opinion.  I'm attaching the patch that I have here for future reference and WONTFIXing this.
Reporter

Updated

7 years ago
Status: NEW → RESOLVED
Last Resolved: 7 years ago
Resolution: --- → WONTFIX
Depends on: 802442
(In reply to Ehsan Akhgari [:ehsan] from comment #1)
> mccr8 tells me that I need
> to add a virtual GetParticipant function which returns the right type of
> participant based on the concrete type of the object, and that is on top of
> the virtual AddRef and Release methods that I had to add, so this is no
> longer worth doing in my opinion.  I'm attaching the patch that I have here
> for future reference and WONTFIXing this.

Yeah, that's unfortunate. I suppose you expect AudioBufferSourceNode will have additional members it needs to traverse? Because in the patch it doesn't and so it shouldn't need its own CC participant or GetParticipant.
AudioBufferSourceNode has an additional field mBuffer needs to be traversed.
Reporter

Comment 4

6 years ago
Mass moving Web Audio bugs to the Web Audio component.  Filter on duckityduck.
Component: Video/Audio → Web Audio
You need to log in before you can comment on or make changes to this bug.