[haiku-commits] r38551 - haiku/trunk/src/apps/mediaplayer/media_node_framework

  • From: superstippi@xxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Mon, 6 Sep 2010 21:09:16 +0200 (CEST)

Author: stippi
Date: 2010-09-06 21:09:16 +0200 (Mon, 06 Sep 2010)
New Revision: 38551
Changeset: http://dev.haiku-os.org/changeset/38551
Ticket: http://dev.haiku-os.org/ticket/3855

Modified:
   haiku/trunk/src/apps/mediaplayer/media_node_framework/NodeManager.cpp
Log:
Always call PlaybackManager::Init() in FormatChanged(). This makes
sure we don't deal with stale PlayingState and other outdated data
when the Controller initializes to a new file, but does not need
to teardown the old and setup new media nodes. Fixes ticket #3855.


Modified: haiku/trunk/src/apps/mediaplayer/media_node_framework/NodeManager.cpp
===================================================================
--- haiku/trunk/src/apps/mediaplayer/media_node_framework/NodeManager.cpp       
2010-09-06 19:06:46 UTC (rev 38550)
+++ haiku/trunk/src/apps/mediaplayer/media_node_framework/NodeManager.cpp       
2010-09-06 19:09:16 UTC (rev 38551)
@@ -86,13 +86,13 @@
        PlaybackManager::Init(videoFrameRate, loopingMode, loopingEnabled, 
speed);
 
        // get some objects from a derived class
-       if (!fVideoTarget)
+       if (fVideoTarget == NULL)
                fVideoTarget = CreateVideoTarget();
 
-       if (!fVideoSupplier)
+       if (fVideoSupplier == NULL)
                fVideoSupplier = CreateVideoSupplier();
 
-       if (!fAudioSupplier)
+       if (fAudioSupplier == NULL)
                fAudioSupplier = CreateAudioSupplier();
 
        return FormatChanged(videoBounds, videoFrameRate, preferredVideoFormat,
@@ -145,11 +145,8 @@
                return B_OK;
        }
 
-       if (videoFrameRate != FramesPerSecond()) {
-               TRACE("   -> need to Init()\n");
-               PlaybackManager::Init(videoFrameRate, LoopMode(), 
IsLoopingEnabled(),
-                       Speed(), MODE_PLAYING_PAUSED_FORWARD, CurrentFrame());
-       }
+       PlaybackManager::Init(videoFrameRate, LoopMode(), IsLoopingEnabled(),
+               Speed(), MODE_PLAYING_PAUSED_FORWARD, CurrentFrame());
 
        _StopNodes();
        _TearDownNodes();


Other related posts:

  • » [haiku-commits] r38551 - haiku/trunk/src/apps/mediaplayer/media_node_framework - superstippi