diff options
author | mrsmidge <smidge@xsco.net> | 2020-09-26 18:19:37 +0100 |
---|---|---|
committer | mrsmidge <smidge@xsco.net> | 2020-09-26 18:19:37 +0100 |
commit | 4c914b0cf68a8158d1e2183443c1533633513bde (patch) | |
tree | c14d2fc2d8b95b773c339ce47705e8f93e3eecd2 /src/djinterop/enginelibrary | |
parent | 0b794d724130bad20ac5480cdf0b6abd71f91a82 (diff) |
Fix exception when no average loudness set
If the average loudness in Engine Library format is zero, this is now
interpreted as there being no average loudness.
Diffstat (limited to 'src/djinterop/enginelibrary')
-rw-r--r-- | src/djinterop/enginelibrary/el_track_impl.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/djinterop/enginelibrary/el_track_impl.cpp b/src/djinterop/enginelibrary/el_track_impl.cpp index 707253e..0febf3b 100644 --- a/src/djinterop/enginelibrary/el_track_impl.cpp +++ b/src/djinterop/enginelibrary/el_track_impl.cpp @@ -317,7 +317,11 @@ void el_track_impl::set_average_loudness( { el_transaction_guard_impl trans{storage_}; auto track_d = get_track_data(); - track_d.average_loudness = average_loudness; + + // Zero average loudness is interpreted as no average loudness. + track_d.average_loudness = + average_loudness == 0 ? stdx::nullopt : average_loudness; + set_track_data(track_d); trans.commit(); } |