20.0.3 soundStream script causing IE errors
Since updating to 20.0.3, my published html5 files no longer work correctly in IE. I have created a simple 5 frame animation with a next and back button to navigate the frames. The error seems related to the new soundStream script and var keys. Here is a snippet of the new resulting code:
<script>
(function (cjs, an) {
var p; // shortcut to reference prototypes
var lib={};var ss={};var img={};
var rect; // used to reference frame bounds
lib.ssMetadata = [];
(lib.AnMovieClip = function(){
this.currentSoundStreamInMovieclip;
this.actionFrames = [];
this.soundStreamDuration = new Map();
this.streamSoundSymbolsList = [];
this.gotoAndPlayForStreamSoundSync = function(positionOrLabel){
cjs.MovieClip.prototype.gotoAndPlay.call(this,positionOrLabel);
}
this.gotoAndPlay = function(positionOrLabel){
this.clearAllSoundStreams();
this.startStreamSoundsForTargetedFrame(positionOrLabel);
cjs.MovieClip.prototype.gotoAndPlay.call(this,positionOrLabel);
}
this.play = function(){
this.clearAllSoundStreams();
this.startStreamSoundsForTargetedFrame(this.currentFrame);
cjs.MovieClip.prototype.play.call(this);
}
this.gotoAndStop = function(positionOrLabel){
cjs.MovieClip.prototype.gotoAndStop.call(this,positionOrLabel);
this.clearAllSoundStreams();
}
The resulting html works fine in all other browsers and does not give an error but would jump to frame 2 and lock up. The issue seems to be related to the var keys here:
this.clearAllSoundStreams = function(){
this.soundStreamDuration.keys(); <- this line
for(var i = 0;i<this.soundStreamDuration.size; i++){
var key = keys.next().value;
key.instance.stop();
}
this.soundStreamDuration.clear();
this.currentSoundStreamInMovieclip = undefined;
}
After reading through this thread: https://community.adobe.com/t5/animate/occur-a-problem-during-testing-html-canvas-in-browser/m-p/11088225?page=1 I "dowgraded" to 20.0.2 which fixed my issues.
