Merge branch 'v0.22.x'

This commit is contained in:
Max Kellermann
2021-02-07 22:04:07 +01:00
4 changed files with 23 additions and 7 deletions

View File

@@ -221,8 +221,8 @@ public:
if (new_offset > size)
throw std::runtime_error("Invalid seek offset");
offset = new_offset;
skip = new_offset % ISO_BLOCKSIZE;
offset = new_offset - skip;
buffer.Clear();
}
};
@@ -260,13 +260,13 @@ Iso9660InputStream::Read(std::unique_lock<Mutex> &,
if (r.empty()) {
/* the buffer is empty - read more data from the ISO file */
assert(offset % ISO_BLOCKSIZE == 0);
assert((offset - skip) % ISO_BLOCKSIZE == 0);
const ScopeUnlock unlock(mutex);
const lsn_t read_lsn = lsn + offset / ISO_BLOCKSIZE;
if (read_size >= ISO_BLOCKSIZE) {
if (read_size >= ISO_BLOCKSIZE && skip == 0) {
/* big read - read right into the caller's buffer */
auto nbytes = iso->SeekRead(ptr, read_lsn,

View File

@@ -352,7 +352,7 @@ scan_id3_tag(const struct id3_tag *tag, TagHandler &handler) noexcept
handler);
tag_id3_import_text(tag, ID3_FRAME_COMPOSER, TAG_COMPOSER,
handler);
tag_id3_import_text(tag, "TPE3", TAG_PERFORMER,
tag_id3_import_text(tag, "TPE3", TAG_CONDUCTOR,
handler);
tag_id3_import_text(tag, "TPE4", TAG_PERFORMER, handler);
tag_id3_import_text(tag, "TIT1", TAG_GROUPING, handler);