diff --git a/taglib/mpeg/id3v2/frames/chapterframe.cpp b/taglib/mpeg/id3v2/frames/chapterframe.cpp index 049f947d..c839f588 100644 --- a/taglib/mpeg/id3v2/frames/chapterframe.cpp +++ b/taglib/mpeg/id3v2/frames/chapterframe.cpp @@ -294,8 +294,10 @@ ByteVector ChapterFrame::renderFields() const data.append(ByteVector::fromUInt(d->startOffset, true)); data.append(ByteVector::fromUInt(d->endOffset, true)); FrameList l = d->embeddedFrameList; - for(FrameList::ConstIterator it = l.begin(); it != l.end(); ++it) + for(FrameList::ConstIterator it = l.begin(); it != l.end(); ++it) { + (*it)->header()->setVersion(header()->version()); data.append((*it)->render()); + } return data; } diff --git a/taglib/mpeg/id3v2/frames/tableofcontentsframe.cpp b/taglib/mpeg/id3v2/frames/tableofcontentsframe.cpp index b6e6ae55..9061a9bc 100644 --- a/taglib/mpeg/id3v2/frames/tableofcontentsframe.cpp +++ b/taglib/mpeg/id3v2/frames/tableofcontentsframe.cpp @@ -344,8 +344,10 @@ ByteVector TableOfContentsFrame::renderFields() const it++; } FrameList l = d->embeddedFrameList; - for(FrameList::ConstIterator it = l.begin(); it != l.end(); ++it) + for(FrameList::ConstIterator it = l.begin(); it != l.end(); ++it) { + (*it)->header()->setVersion(header()->version()); data.append((*it)->render()); + } return data; } diff --git a/taglib/mpeg/id3v2/id3v2frame.h b/taglib/mpeg/id3v2/id3v2frame.h index b14f6f42..2e744fc5 100644 --- a/taglib/mpeg/id3v2/id3v2frame.h +++ b/taglib/mpeg/id3v2/id3v2frame.h @@ -55,6 +55,8 @@ namespace TagLib { { friend class Tag; friend class FrameFactory; + friend class TableOfContentsFrame; + friend class ChapterFrame; public: