summaryrefslogtreecommitdiff
path: root/src/database/records.cpp
diff options
context:
space:
mode:
authorjacqueline <me@jacqueline.id.au>2023-09-06 12:38:40 +1000
committerjacqueline <me@jacqueline.id.au>2023-09-06 12:38:40 +1000
commit63215ccf1677ac2ea41cd6f64025d55f6f4918a0 (patch)
treed4a4bf6b450c30dcd38a6e864388321b5b5e0882 /src/database/records.cpp
parentdad14baa73a9a46c450193da43bf960b436f7ec5 (diff)
downloadtangara-fw-63215ccf1677ac2ea41cd6f64025d55f6f4918a0.tar.gz
Fix missing track number issues
Diffstat (limited to 'src/database/records.cpp')
-rw-r--r--src/database/records.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/database/records.cpp b/src/database/records.cpp
index 72608eb0..0d28ca28 100644
--- a/src/database/records.cpp
+++ b/src/database/records.cpp
@@ -309,7 +309,8 @@ auto EncodeIndexKey(const IndexKey& key) -> OwningSlice {
// Construct the footer.
out << kFieldSeparator;
if (key.track) {
- out << TrackIdToBytes(*key.track).data;
+ auto encoded = TrackIdToBytes(*key.track);
+ out << encoded.data;
}
return OwningSlice(out.str());
}
@@ -394,9 +395,9 @@ auto ParseIndexKey(const leveldb::Slice& slice) -> std::optional<IndexKey> {
buffer = {};
in.get(buffer);
- if (buffer.str().size() > 1) {
- std::string raw_id = buffer.str().substr(1);
- result.track = BytesToTrackId(raw_id);
+ std::string id_str = buffer.str();
+ if (id_str.size() > 1) {
+ result.track = BytesToTrackId(id_str.substr(1));
}
return result;