From 87b982c7de89ab734429c1cbb1a474c3270965bf Mon Sep 17 00:00:00 2001 From: Daniel Rossi Date: Sat, 18 Jan 2014 02:33:15 +1100 Subject: [PATCH] =?UTF-8?q?-=20#197=20fix=20stack=20issue=20in=20waiting?= =?UTF-8?q?=20state=20caused=20from=20#163.=20-=20#197=20don=E2=80=99t=20s?= =?UTF-8?q?et=20to=20silent=20when=20stopping=20the=20stream=20when=20repl?= =?UTF-8?q?aying=20playlists,=20this=20causes=20some=20issues.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/flowplayer/controller/PlayListController.as | 6 ++++-- .../actionscript/org/flowplayer/controller/WaitingState.as | 5 +++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/core/src/actionscript/org/flowplayer/controller/PlayListController.as b/core/src/actionscript/org/flowplayer/controller/PlayListController.as index 9321e6f..6828d04 100644 --- a/core/src/actionscript/org/flowplayer/controller/PlayListController.as +++ b/core/src/actionscript/org/flowplayer/controller/PlayListController.as @@ -340,7 +340,8 @@ package org.flowplayer.controller { private function replacePlaylistAndPlay(clips:Object):void { //#163 stop the connection and stream - _state.stop(true, true); + //#197 don't set stop to silent, causes some issues + _state.stop(true); clearStream(); if (clips is Clip) { @@ -348,7 +349,8 @@ package org.flowplayer.controller { } else { _playList.replaceClips2(clips as Array); } - play(); + + _state.play(); } flow_internal function addProvider(provider:ProviderModel):void { diff --git a/core/src/actionscript/org/flowplayer/controller/WaitingState.as b/core/src/actionscript/org/flowplayer/controller/WaitingState.as index 511b89b..481a285 100644 --- a/core/src/actionscript/org/flowplayer/controller/WaitingState.as +++ b/core/src/actionscript/org/flowplayer/controller/WaitingState.as @@ -49,11 +49,12 @@ import org.flowplayer.model.ClipEventType; override internal function stop(closeStreamAndConnection:Boolean = false, silent:Boolean = false):void { if (closeStreamAndConnection) { - stop(true); + //#197 fix stack error referencing stop method + super.stop(closeStreamAndConnection, silent); } } - internal override function startBuffering():void { + internal override function startBuffering():void { if (! playListReady) return; log.debug("startBuffering()"); bufferingState.nextStateAfterBufferFull = pausedState;