diff --git a/src/apps/mediaplayer/Controller.cpp b/src/apps/mediaplayer/Controller.cpp index 2554c4136c..0eb302b2f5 100644 --- a/src/apps/mediaplayer/Controller.cpp +++ b/src/apps/mediaplayer/Controller.cpp @@ -81,33 +81,33 @@ void Controller::Listener::MutedChanged(bool) {} Controller::Controller() - : NodeManager() - , fVideoView(NULL) - , fVolume(1.0) - , fMuted(false) + : NodeManager(), + fVideoView(NULL), + fVolume(1.0), + fMuted(false), - , fRef() - , fMediaFile(NULL) + fRef(), + fMediaFile(NULL), - , fVideoSupplier(new ProxyVideoSupplier()) - , fAudioSupplier(new ProxyAudioSupplier(this)) - , fVideoTrackSupplier(NULL) - , fAudioTrackSupplier(NULL) + fVideoSupplier(new ProxyVideoSupplier()), + fAudioSupplier(new ProxyAudioSupplier(this)), + fVideoTrackSupplier(NULL), + fAudioTrackSupplier(NULL), - , fAudioTrackList(4) - , fVideoTrackList(2) + fAudioTrackList(4), + fVideoTrackList(2), - , fPosition(0) - , fDuration(0) - , fVideoFrameRate(25.0) - , fSeekFrame(-1) - , fLastSeekEventTime(LONGLONG_MIN) + fPosition(0), + fDuration(0), + fVideoFrameRate(25.0), + fSeekFrame(-1), + fLastSeekEventTime(LONGLONG_MIN), - , fAutoplay(true) - , fPauseAtEndOfStream(false) - , fSeekToStartAfterPause(false) + fAutoplay(true), + fPauseAtEndOfStream(false), + fSeekToStartAfterPause(false), - , fListeners(4) + fListeners(4) { fStopped = fAutoplay ? false : true; } diff --git a/src/apps/mediaplayer/media_node_framework/PlaybackManager.cpp b/src/apps/mediaplayer/media_node_framework/PlaybackManager.cpp index e085453302..5ac2bc5f61 100644 --- a/src/apps/mediaplayer/media_node_framework/PlaybackManager.cpp +++ b/src/apps/mediaplayer/media_node_framework/PlaybackManager.cpp @@ -371,8 +371,11 @@ PlaybackManager::SetCurrentFrame(int64 frame) void PlaybackManager::SetPlayMode(int32 mode, bool continuePlaying) { + PlayingState* lastState = _LastState(); + if (lastState == NULL) + return; //printf("PlaybackManager::SetPlayMode(%ld, %d)\n", mode, continuePlaying); - PlayingState* newState = new PlayingState(*_LastState()); + PlayingState* newState = new PlayingState(*lastState); newState->play_mode = mode; // Jump to the playing start frame if we should not continue, where we // stop.