| 372 |
|
begin |
| 373 |
|
if fileid < GetFileCount then |
| 374 |
|
begin |
| 375 |
+ |
if not Assigned(Target) then |
| 376 |
+ |
Target := TMemoryStream.Create; |
| 377 |
|
if GetFileInfo(FileID).Size > 0 then |
| 378 |
|
begin |
| 377 |
– |
if not Assigned(Target) then |
| 378 |
– |
Target := TMemoryStream.Create; |
| 379 |
|
if not FDatOpened then |
| 380 |
|
Fdat_file := TFileStream.Create(FFileName, fmOpenReadWrite); |
| 381 |
|
Fdat_file.Seek(Fdat_files[fileid].DatAddr, soFromBeginning); |
| 507 |
|
list := GetRawList(StrToInt(MidStr(dats.Strings[i], 1, 5))); |
| 508 |
|
for j := 0 to Length(list) - 1 do |
| 509 |
|
begin |
| 510 |
< |
if list[j].RawType = RawType then |
| 510 |
> |
if (list[j].RawType = RawType) and (list[j].RawSize > 0) then |
| 511 |
|
begin |
| 512 |
|
SetLength(Result, Length(Result)+1); |
| 513 |
|
Result[High(Result)] := list[j]; |