Some missing signal disconnections.
authorCarl Hetherington <cth@carlh.net>
Sun, 28 Jul 2013 15:20:23 +0000 (16:20 +0100)
committerCarl Hetherington <cth@carlh.net>
Sun, 28 Jul 2013 15:20:23 +0000 (16:20 +0100)
src/lib/player.cc
src/lib/player.h

index bf5bc6489eb1e5f6c61009ff9cd0769c5e43cd37..33a5bbfef828a9b2712f822af210eedbd2955d24 100644 (file)
@@ -100,9 +100,9 @@ Player::Player (shared_ptr<const Film> f, shared_ptr<const Playlist> p)
        , _audio_merger (f->audio_channels(), bind (&Film::time_to_audio_frames, f.get(), _1), bind (&Film::audio_frames_to_time, f.get(), _1))
        , _last_emit_was_black (false)
 {
-       _playlist->Changed.connect (bind (&Player::playlist_changed, this));
-       _playlist->ContentChanged.connect (bind (&Player::content_changed, this, _1, _2, _3));
-       _film->Changed.connect (bind (&Player::film_changed, this, _1));
+       _playlist_changed_connection = _playlist->Changed.connect (bind (&Player::playlist_changed, this));
+       _playlist_content_changed_connection = _playlist->ContentChanged.connect (bind (&Player::content_changed, this, _1, _2, _3));
+       _film_changed_connection = _film->Changed.connect (bind (&Player::film_changed, this, _1));
        set_video_container_size (_film->container()->size (_film->full_frame ()));
 }
 
index cb5643753855bf7296e0575188e8c7fb2405ff61..85d750f6fd7ef39a668bd8cbab25f58271d7bd80 100644 (file)
@@ -136,6 +136,10 @@ private:
 #endif
 
        bool _last_emit_was_black;
+
+       boost::signals2::scoped_connection _playlist_changed_connection;
+       boost::signals2::scoped_connection _playlist_content_changed_connection;
+       boost::signals2::scoped_connection _film_changed_connection;
 };
 
 #endif