Edits in dtsc lib to only use optimized parsing if the file is merged.
This commit is contained in:
parent
6666cf22f0
commit
c394a1a767
1 changed files with 22 additions and 17 deletions
|
@ -706,6 +706,9 @@ void DTSC::File::seekNext(){
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
clearerr(F);
|
clearerr(F);
|
||||||
|
if ( !metadata.isMember("merged") || !metadata["merged"]){
|
||||||
|
seek_time(currentPositions.begin()->seekTime + 1, currentPositions.begin()->trackID);
|
||||||
|
}
|
||||||
fseek(F,currentPositions.begin()->seekPos, SEEK_SET);
|
fseek(F,currentPositions.begin()->seekPos, SEEK_SET);
|
||||||
currentPositions.erase(currentPositions.begin());
|
currentPositions.erase(currentPositions.begin());
|
||||||
lastreadpos = ftell(F);
|
lastreadpos = ftell(F);
|
||||||
|
@ -759,6 +762,7 @@ void DTSC::File::seekNext(){
|
||||||
}else{
|
}else{
|
||||||
jsonbuffer = JSON::fromDTMI(strbuffer);
|
jsonbuffer = JSON::fromDTMI(strbuffer);
|
||||||
}
|
}
|
||||||
|
if (metadata.isMember("merged") && metadata["merged"]){
|
||||||
int tempLoc = getBytePos();
|
int tempLoc = getBytePos();
|
||||||
char newHeader[20];
|
char newHeader[20];
|
||||||
if (fread((void*)newHeader, 20, 1, F) == 1){
|
if (fread((void*)newHeader, 20, 1, F) == 1){
|
||||||
|
@ -782,6 +786,7 @@ void DTSC::File::seekNext(){
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void DTSC::File::parseNext(){
|
void DTSC::File::parseNext(){
|
||||||
|
|
Loading…
Add table
Reference in a new issue