Fix crash on using content with more than 12 audio channels.
authorCarl Hetherington <cth@carlh.net>
Fri, 9 May 2014 21:55:43 +0000 (22:55 +0100)
committerCarl Hetherington <cth@carlh.net>
Fri, 9 May 2014 21:55:43 +0000 (22:55 +0100)
Reported-by: Sumit
ChangeLog
src/lib/audio_mapping.cc

index f76c6ba35d9e890883b0a8518cf9b4b934412f1e..21b6eec1585cb5fd1fd7877111e68bd6b0a83f00 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
 2014-05-09  Carl Hetherington  <cth@carlh.net>
 
+       * Fix crash on using content with more than 12 audio channels.
+
        * Re-introduce ffprobe call when adding content.
 
 2014-05-02  Carl Hetherington  <cth@carlh.net>
index 28a0fc3801f5231e75eeeb66d5495c9c422aee02..301d44fa665f0840f60cdd30956352ec3f1d76b0 100644 (file)
@@ -28,6 +28,7 @@ using std::cout;
 using std::make_pair;
 using std::pair;
 using std::string;
+using std::min;
 using boost::shared_ptr;
 using boost::lexical_cast;
 using boost::dynamic_pointer_cast;
@@ -71,7 +72,7 @@ AudioMapping::make_default ()
                set (0, libdcp::CENTRE, 1);
        } else {
                /* 1:1 mapping */
-               for (int i = 0; i < _content_channels; ++i) {
+               for (int i = 0; i < min (_content_channels, MAX_DCP_AUDIO_CHANNELS); ++i) {
                        set (i, static_cast<libdcp::Channel> (i), 1);
                }
        }