Lines 1-16
Link Here
|
1 |
diff -ruN unrar.orig/dll.cpp unrar/dll.cpp |
1 |
diff -ruN unrar.orig/dll.cpp unrar/dll.cpp |
2 |
--- dll.cpp.orig 2005-08-03 20:34:30.000000000 +0400 |
2 |
+++ dll.cpp |
3 |
+++ dll.cpp 2006-01-11 12:13:33.000000000 +0300 |
3 |
@@ -59,8 +59,8 @@ |
4 |
@@ -271,8 +271,10 @@ |
4 |
} |
|
|
5 |
if (!Data->Arc.IsArchive(false)) |
6 |
{ |
7 |
- delete Data; |
8 |
r->OpenResult=Data->Cmd.DllError!=0 ? Data->Cmd.DllError:ERAR_BAD_ARCHIVE; |
9 |
+ delete Data; |
10 |
return(NULL); |
11 |
} |
12 |
r->Flags=Data->Arc.NewMhd.Flags; |
13 |
@@ -272,7 +272,9 @@ |
5 |
strcpy(Data->Cmd.Command,Operation==RAR_EXTRACT ? "X":"T"); |
14 |
strcpy(Data->Cmd.Command,Operation==RAR_EXTRACT ? "X":"T"); |
6 |
Data->Cmd.Test=Operation!=RAR_EXTRACT; |
15 |
Data->Cmd.Test=Operation!=RAR_EXTRACT; |
7 |
bool Repeat=false; |
16 |
bool Repeat=false; |
8 |
- Data->Extract.ExtractCurrentFile(&Data->Cmd,Data->Arc,Data->HeaderSize,Repeat); |
17 |
- Data->Extract.ExtractCurrentFile(&Data->Cmd,Data->Arc,Data->HeaderSize,Repeat); |
9 |
- |
|
|
10 |
+ |
18 |
+ |
11 |
+ if(Data->Extract.ExtractCurrentFile(&Data->Cmd,Data->Arc,Data->HeaderSize,Repeat) == false) |
19 |
+ if(Data->Extract.ExtractCurrentFile(&Data->Cmd,Data->Arc,Data->HeaderSize,Repeat) == false) |
12 |
+ return (ERAR_UNKNOWN); |
20 |
+ return (ERAR_UNKNOWN); |
13 |
+ |
21 |
|
14 |
while (Data->Arc.ReadHeader()!=0 && Data->Arc.GetHeaderType()==NEWSUB_HEAD) |
22 |
while (Data->Arc.ReadHeader()!=0 && Data->Arc.GetHeaderType()==NEWSUB_HEAD) |
15 |
{ |
23 |
{ |
16 |
Data->Extract.ExtractCurrentFile(&Data->Cmd,Data->Arc,Data->HeaderSize,Repeat); |
|
|