From: Robin Gareus Date: Fri, 22 Apr 2016 21:36:41 +0000 (+0200) Subject: fix send-id "0" when loading session X-Git-Tag: 5.0-pre0~853 X-Git-Url: https://git.carlh.net/gitweb/?a=commitdiff_plain;h=f719dcbd4311fa7e57b3905d4ecd61ce48c572f0;p=ardour.git fix send-id "0" when loading session Send::set_state() unsets the current send-id before setting the new one, but by default _bitset defaults to zero. This may lead to unset an existing send "0" --- diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc index 1fcd219e95..b6cc258fa7 100644 --- a/libs/ardour/session.cc +++ b/libs/ardour/session.cc @@ -5491,7 +5491,7 @@ Session::next_insert_id () /* this doesn't really loop forever. just think about it */ while (true) { - for (boost::dynamic_bitset::size_type n = 0; n < insert_bitset.size(); ++n) { + for (boost::dynamic_bitset::size_type n = 1; n < insert_bitset.size(); ++n) { if (!insert_bitset[n]) { insert_bitset[n] = true; return n; @@ -5511,7 +5511,7 @@ Session::next_send_id () /* this doesn't really loop forever. just think about it */ while (true) { - for (boost::dynamic_bitset::size_type n = 0; n < send_bitset.size(); ++n) { + for (boost::dynamic_bitset::size_type n = 1; n < send_bitset.size(); ++n) { if (!send_bitset[n]) { send_bitset[n] = true; return n; @@ -5531,7 +5531,7 @@ Session::next_aux_send_id () /* this doesn't really loop forever. just think about it */ while (true) { - for (boost::dynamic_bitset::size_type n = 0; n < aux_send_bitset.size(); ++n) { + for (boost::dynamic_bitset::size_type n = 1; n < aux_send_bitset.size(); ++n) { if (!aux_send_bitset[n]) { aux_send_bitset[n] = true; return n; @@ -5551,7 +5551,7 @@ Session::next_return_id () /* this doesn't really loop forever. just think about it */ while (true) { - for (boost::dynamic_bitset::size_type n = 0; n < return_bitset.size(); ++n) { + for (boost::dynamic_bitset::size_type n = 1; n < return_bitset.size(); ++n) { if (!return_bitset[n]) { return_bitset[n] = true; return n;