| Index: Source/modules/webaudio/AudioParam.h
|
| diff --git a/Source/modules/webaudio/AudioParam.h b/Source/modules/webaudio/AudioParam.h
|
| index d278d57cde6853c9b44916a5fdb9f9d12f520c75..32b67be7de2bd3bce2d187ab635cd29fa121a085 100644
|
| --- a/Source/modules/webaudio/AudioParam.h
|
| +++ b/Source/modules/webaudio/AudioParam.h
|
| @@ -42,7 +42,7 @@ namespace blink {
|
|
|
| class AudioNodeOutput;
|
|
|
| -class AudioParamHandler final : public AudioSummingJunction, public ScriptWrappable {
|
| +class AudioParamHandler final : public GarbageCollectedFinalized<AudioParamHandler>, public AudioSummingJunction, public ScriptWrappable {
|
| DEFINE_WRAPPERTYPEINFO();
|
| public:
|
| static const double DefaultSmoothingConstant;
|
| @@ -52,6 +52,8 @@ public:
|
| {
|
| return new AudioParamHandler(context, defaultValue);
|
| }
|
| + DECLARE_TRACE();
|
| + AudioContext* context() const { return m_context; }
|
|
|
| // AudioSummingJunction
|
| virtual void didUpdate() override { }
|
| @@ -116,10 +118,11 @@ public:
|
|
|
| private:
|
| AudioParamHandler(AudioContext* context, double defaultValue)
|
| - : AudioSummingJunction(context)
|
| + : AudioSummingJunction(context->handler())
|
| , m_value(defaultValue)
|
| , m_defaultValue(defaultValue)
|
| - , m_smoothedValue(defaultValue) { }
|
| + , m_smoothedValue(defaultValue)
|
| + , m_context(context) { }
|
|
|
| // sampleAccurate corresponds to a-rate (audio rate) vs. k-rate in the Web Audio specification.
|
| void calculateFinalValues(float* values, unsigned numberOfValues, bool sampleAccurate);
|
| @@ -132,6 +135,7 @@ private:
|
| double m_smoothedValue;
|
|
|
| AudioParamTimeline m_timeline;
|
| + Member<AudioContext> m_context;
|
| };
|
|
|
| // TODO(tkent): remove the type alias, and introduce a real AudioParam class to
|
|
|