note-off ordering - fixes #6340
authorRobin Gareus <robin@gareus.org>
Mon, 14 Sep 2015 02:55:01 +0000 (04:55 +0200)
committerRobin Gareus <robin@gareus.org>
Mon, 14 Sep 2015 02:55:01 +0000 (04:55 +0200)
commite63c3d028aac5880c36f1eb17892a5b42d5d565a
tree41fd27c3c259586bd04fb950eb3ce4f2944beea3
parent67aa2f876344e6052d634575529e9821f6458f9e
note-off ordering - fixes #6340

Evoral::Beats::operator>() rounds to (1.0 / PPQN), hardcoded 1/1920.0.

If the time difference between two events is smaller than 1/PPQN,
Beats::operator>()  and  Beats::operator<()  produce ambiguous results.
The same pair of values is both "less than" and "greater than" depending
which operator is used.

While it's fine for some cases to ignore the order of nearly concurent
events, the std::priority_queue must be strictly ordered.
libs/evoral/evoral/Sequence.hpp