Page 1 of 1

Unpack/Join with wronly posted par2 files

Posted: Tue Jul 07, 2009 9:34 am
by Bert
Hi,

Now and then I download a splitted file set. UE downloads them, checks the par's and joins them into 1 file.
But the file is corrupt. How is that possible since there were par files?

I looked further because it happened more than once and I think I know how this is possible.

It happens when there is something wrong with the Par set.
I have uploaded an example in alt.binaries.test named uetest.
I created par's for only the first rar. That ofcoarse is wrong but it just happens now and then and UE doesn't handle this too well.
The 2nd rar is corrupted, so the rar set can't be unrared without errors.

So UE downloads them, checks the par's, thinks everything is ok (because part 1 isn't corrupted) and starts to unrar.
While unraring UE sees the error and shows it. That's good.

But if this wasn't a rar set but a split file set there is no indication the second part is corrupt and ue finishes the join task without error message. But the file is corrupt. And in case of a i.e. a WMV file it will play but you can't skip in the file.

It would be nice if UE could check if the pars are not good created and warns the end user. Joining a file which is corrupt as happens now is not good.

Posted: Tue Jul 07, 2009 12:34 pm
by alex
as to join sometimes par2 files cover the whole joined file (so the poster first generated par2 files, then he split the file, then he posted the parts).

UE will assemble the file after all split parts have been downloaded and only then it will verify the file. so with a split file UE can handle both cases - when par2 files cover the whole file or they cover split file parts separatedly.

if par2 files only cover the first part of the split file or the first rar file of the rar set and the rest were posted without par2 files - i'm not sure how it works, if it joins or unrars maybe it is the only thing which could be done, since if the file is not right anyway you don't have other parts to repair it.