} else {
snprintf(buf, sizeof(buf), "%.3f", v);
}
- if (desc.unit == ARDOUR::ParameterDescriptor::DB) {
+ if (desc.print_fmt.empty() && desc.unit == ARDOUR::ParameterDescriptor::DB) {
// TODO: Move proper dB printing from AutomationLine here
return std::string(buf) + " dB";
}
desc.unit = ParameterDescriptor::DB;
} else if (lilv_nodes_contains(units, _world.units_hz)) {
desc.unit = ParameterDescriptor::HZ;
- } else if (lilv_nodes_size(units) > 0) {
+ }
+ if (lilv_nodes_size(units) > 0) {
const LilvNode* unit = lilv_nodes_get_first(units);
LilvNode* render = get_value(lworld, unit, _world.units_render);
if (render) {