Fixed a bug which would only allow Matroska files up to 4GB to be read.

This commit is contained in:
Moritz Bunkus 2003-08-12 13:27:55 +00:00
parent 9d6e715f78
commit f002dd9544
7 changed files with 10 additions and 7 deletions

View File

@ -1,5 +1,8 @@
2003-08-12 Moritz Bunkus <moritz@bunkus.org>
* all tools: Fixed a bug which would only allow Matroska files up
to 4GB to be read.
* mkvinfo: Unknown elements are properly skipped now.
2003-08-11 Moritz Bunkus <moritz@bunkus.org>

View File

@ -197,7 +197,7 @@ void extract_attachments(const char *file_name) {
while (1) {
// Next element must be a segment
l0 = es->FindNextID(KaxSegment::ClassInfos, 0xFFFFFFFFL);
l0 = es->FindNextID(KaxSegment::ClassInfos, 0xFFFFFFFFFFFFFFFFLL);
if (l0 == NULL) {
show_error("No segment/level 0 element found.");
return;

View File

@ -109,7 +109,7 @@ void extract_chapters(const char *file_name, bool chapter_format_simple) {
while (1) {
// Next element must be a segment
l0 = es->FindNextID(KaxSegment::ClassInfos, 0xFFFFFFFFL);
l0 = es->FindNextID(KaxSegment::ClassInfos, 0xFFFFFFFFFFFFFFFFLL);
if (l0 == NULL) {
show_error("No segment/level 0 element found.");
return;

View File

@ -109,7 +109,7 @@ void extract_tags(const char *file_name) {
while (1) {
// Next element must be a segment
l0 = es->FindNextID(KaxSegment::ClassInfos, 0xFFFFFFFFL);
l0 = es->FindNextID(KaxSegment::ClassInfos, 0xFFFFFFFFFFFFFFFFLL);
if (l0 == NULL) {
show_error("No segment/level 0 element found.");
return;

View File

@ -745,7 +745,7 @@ bool extract_tracks(const char *file_name) {
while (1) {
// Next element must be a segment
l0 = es->FindNextID(KaxSegment::ClassInfos, 0xFFFFFFFFL);
l0 = es->FindNextID(KaxSegment::ClassInfos, 0xFFFFFFFFFFFFFFFFLL);
if (l0 == NULL) {
show_error("No segment/level 0 element found.");
return false;

View File

@ -436,7 +436,7 @@ bool process_file(const char *file_name) {
while (1) {
// Next element must be a segment
l0 = es->FindNextID(KaxSegment::ClassInfos, 0xFFFFFFFFL);
l0 = es->FindNextID(KaxSegment::ClassInfos, 0xFFFFFFFFFFFFFFFFLL);
if (l0 == NULL) {
show_error("No segment/level 0 element found.");
return false;

View File

@ -549,7 +549,7 @@ int kax_reader_c::read_headers() {
es = new EbmlStream(*in);
// Find the EbmlHead element. Must be the first one.
l0 = es->FindNextID(EbmlHead::ClassInfos, 0xFFFFFFFFL);
l0 = es->FindNextID(EbmlHead::ClassInfos, 0xFFFFFFFFFFFFFFFFLL);
if (l0 == NULL) {
mxprint(stderr, "Error: matroska_reader: no EBML head found.\n");
return 0;
@ -562,7 +562,7 @@ int kax_reader_c::read_headers() {
mxprint(stdout, "matroska_reader: Found the head...\n");
// Next element must be a segment
l0 = es->FindNextID(KaxSegment::ClassInfos, 0xFFFFFFFFL);
l0 = es->FindNextID(KaxSegment::ClassInfos, 0xFFFFFFFFFFFFFFFFLL);
if (l0 == NULL) {
if (verbose)
mxprint(stdout, "matroska_reader: No segment found.\n");