summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Holthuis <jan.holthuis@ruhr-uni-bochum.de>2022-01-07 13:49:19 +0100
committerGitHub <noreply@github.com>2022-01-07 13:49:19 +0100
commit52f7315f7007dbd5f6d430d841f7e466c38ea050 (patch)
tree9be8f6c7c3bf08ddbdff0cf8fd7f450fe98ee532
parentbdf09780425d42082fb1d5f0c5bfb79d865a74a5 (diff)
parentff3298e26778424202e750173a0268ed267790db (diff)
Merge pull request #4607 from uklotzde/beats-deserialization
Beats deserialization: Fix misleading warning logs if no data available
-rw-r--r--src/library/dao/trackdao.cpp5
-rw-r--r--src/track/beats.cpp3
2 files changed, 8 insertions, 0 deletions
diff --git a/src/library/dao/trackdao.cpp b/src/library/dao/trackdao.cpp
index 86b87c16f0..0f66bf272b 100644
--- a/src/library/dao/trackdao.cpp
+++ b/src/library/dao/trackdao.cpp
@@ -1245,6 +1245,11 @@ bool setTrackBeats(const QSqlRecord& record, const int column, Track* pTrack) {
QString beatsVersion = record.value(column + 1).toString();
QString beatsSubVersion = record.value(column + 2).toString();
QByteArray beatsBlob = record.value(column + 3).toByteArray();
+ if (beatsVersion.isEmpty()) {
+ DEBUG_ASSERT(beatsSubVersion.isEmpty());
+ DEBUG_ASSERT(beatsBlob.isEmpty());
+ return false;
+ }
bool bpmLocked = record.value(column + 4).toBool();
const mixxx::BeatsPointer pBeats = mixxx::Beats::fromByteArray(
pTrack->getSampleRate(), beatsVersion, beatsSubVersion, beatsBlob);
diff --git a/src/track/beats.cpp b/src/track/beats.cpp
index a4c8e93faa..4393657792 100644
--- a/src/track/beats.cpp
+++ b/src/track/beats.cpp
@@ -248,6 +248,9 @@ mixxx::BeatsPointer Beats::fromByteArray(
const QString& beatsVersion,
const QString& beatsSubVersion,
const QByteArray& byteArray) {
+ VERIFY_OR_DEBUG_ASSERT(!beatsVersion.isEmpty()) {
+ return nullptr;
+ }
mixxx::BeatsPointer pBeats = nullptr;
if (beatsVersion == BEAT_GRID_1_VERSION || beatsVersion == BEAT_GRID_2_VERSION) {
pBeats = fromBeatGridByteArray(sampleRate, beatsSubVersion, byteArray);