[Ardour-Dev] dead-lock caused by invalid comparison in control_protocol.cc

Giso Grimm gg3137 at vegri.net
Sat Jul 28 08:24:33 PDT 2007


Hi,

in function "void ControlProtocol::prev_track (uint32_t initial_id)" in
the file control_protocol.cc the condition

while (id >= 0) {
  ...
  id--;
}

is always true, since 'id' is of type uint32_t. This causes a dead-lock
when selecting the prev-track button on a Frontier Tranzport device.
Changing the type of 'id' to int32_t resolves this problem. I reported
this bug on the bug tracker (http://tracker.ardour.org/view.php?id=1797).

Also the function ControlProtocol::next_track(...) looks a bit
suspicious, I will have a closer look at it.


- Giso




More information about the Ardour-Dev mailing list