[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    kdeextragear-2/taglib/ogg
From:       Scott Wheeler <wheeler () kde ! org>
Date:       2003-10-19 22:18:06
[Download RAW message or body]

CVS commit by wheeler: 

It seems that everything is working now except that the page checksum that's
set is incorrect...


  M +8 -7      oggfile.cpp   1.10
  M +1 -0      oggpage.cpp   1.17
  M +3 -3      oggpageheader.cpp   1.5


--- kdeextragear-2/taglib/ogg/oggfile.cpp  #1.9:1.10
@@ -34,5 +34,5 @@ class Ogg::File::FilePrivate
 public:
   FilePrivate() :
-    streamSerialNumber(-1),
+    streamSerialNumber(0),
     currentPage(0)
     {}
@@ -42,5 +42,5 @@ public:
   }
 
-  int streamSerialNumber;
+  uint streamSerialNumber;
   Page *currentPage;
   ByteVectorList packets;
@@ -75,6 +75,7 @@ ByteVector Ogg::File::packet(uint i)
     delete d->currentPage;
     d->currentPage = new Page(this, nextPageOffset);
+
     d->pageSizes.append(d->currentPage->size());
-    if(d->streamSerialNumber < 0)
+    if(d->streamSerialNumber == 0)
       d->streamSerialNumber = d->currentPage->pageHeader()->streamSerialNumber();
 
@@ -123,11 +124,11 @@ void Ogg::File::save()
 {
   ByteVectorList l;
-  l.append(packet(1));
   l.append(commentPackets());
+  l.append(packet(2));
   List<Page *> pages = Page::paginate(l, Page::SinglePagePerGroup,
-                                      d->streamSerialNumber, 0);
+                                      d->streamSerialNumber, 1);
 
-  insert(pages.front()->render(), 0, d->pageSizes.front());
-  d->pageSizes[0] = pages.front()->size();
+  insert(pages.front()->render(), d->pageSizes[0], d->pageSizes[1]);
+  d->pageSizes[1] = pages.front()->size();
   delete pages.front();
 }

--- kdeextragear-2/taglib/ogg/oggpage.cpp  #1.16:1.17
@@ -190,4 +190,5 @@ Ogg::Page::Page(const ByteVectorList &pa
     data.append(*it);
   }
+  d->packets = packets;
   d->pageHeader.setPacketSizes(packetSizes);
 }

--- kdeextragear-2/taglib/ogg/oggpageheader.cpp  #1.4:1.5
@@ -202,9 +202,9 @@ ByteVector Ogg::PageHeader::render() con
   // stream serial number
 
-  data.append(ByteVector::fromUInt(d->streamSerialNumber));
+  data.append(ByteVector::fromUInt(d->streamSerialNumber, false));
 
   // page sequence number
 
-  data.append(ByteVector::fromUInt(d->pageSequenceNumber));
+  data.append(ByteVector::fromUInt(d->pageSequenceNumber, false));
 
   // checksum -- this is left empty and should be filled in by the Ogg::Page
@@ -217,5 +217,5 @@ ByteVector Ogg::PageHeader::render() con
   ByteVector pageSegments = lacingValues();
 
-  data.append(ByteVector::fromUInt(pageSegments.size()));
+  data.append(char(uchar(pageSegments.size())));
   data.append(pageSegments);
 


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic