Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 104564
Collapse All | Expand All

(-)mpeg/id3v2/id3v2tag.cpp (-2 / +6 lines)
Lines 438-450 Link Here
438
438
439
    // Checks to make sure that frame parsed correctly.
439
    // Checks to make sure that frame parsed correctly.
440
440
441
    if(frame->size() <= 0) {
441
    if(frame->size() < 0) {
442
      delete frame;
442
      delete frame;
443
      return;
443
      return;
444
    }
444
    }
445
445
446
    frameDataPosition += frame->size() + Frame::headerSize(d->header.majorVersion());
446
    frameDataPosition += frame->size() + Frame::headerSize(d->header.majorVersion());
447
    addFrame(frame);
447
    if (frame->size() == 0) {
448
      delete frame;
449
    } else {
450
      addFrame(frame);
451
    }
448
  }
452
  }
449
}
453
}
450
454
(-)mpeg/id3v2/id3v2framefactory.cpp (-1 / +5 lines)
Lines 72-78 Link Here
72
  // A quick sanity check -- make sure that the frameID is 4 uppercase Latin1
72
  // A quick sanity check -- make sure that the frameID is 4 uppercase Latin1
73
  // characters.  Also make sure that there is data in the frame.
73
  // characters.  Also make sure that there is data in the frame.
74
74
75
  if(!frameID.size() == (version < 3 ? 3 : 4) || header->frameSize() <= 0) {
75
  if(!frameID.size() == (version < 3 ? 3 : 4) || header->frameSize() < 0) {
76
    delete header;
76
    delete header;
77
    return 0;
77
    return 0;
78
  }
78
  }
Lines 103-108 Link Here
103
    return new UnknownFrame(data, header);
103
    return new UnknownFrame(data, header);
104
  }
104
  }
105
105
106
  if (header->frameSize() == 0) {
107
    return new UnknownFrame(data, header);
108
  }
109
106
  // updateFrame() might have updated the frame ID.
110
  // updateFrame() might have updated the frame ID.
107
111
108
  frameID = header->frameID();
112
  frameID = header->frameID();

Return to bug 104564