Lines Matching refs:Cmd

19 void CmdExtract::DoExtract(CommandData *Cmd)  in DoExtract()  argument
22 DataIO.SetCurrentCommand(*Cmd->Command); in DoExtract()
25 while (Cmd->GetArcName(ArcName,ArcNameW,ASIZE(ArcName))) in DoExtract()
29 Cmd->ArcNames->Rewind(); in DoExtract()
30 while (Cmd->GetArcName(ArcName,ArcNameW,ASIZE(ArcName))) in DoExtract()
35 wcscpy(PrevCmdPassword,Cmd->Password); in DoExtract()
37 EXTRACT_ARC_CODE Code=ExtractArchive(Cmd); in DoExtract()
41 wcscpy(Cmd->Password,PrevCmdPassword); in DoExtract()
50 if (TotalFileCount==0 && *Cmd->Command!='I') in DoExtract()
60 if (!Cmd->DisableDone) in DoExtract()
61 if (*Cmd->Command=='I') in DoExtract()
72 void CmdExtract::ExtractArchiveInit(CommandData *Cmd,Archive &Arc) in ExtractArchiveInit() argument
82 if (*Cmd->Password!=0) in ExtractArchiveInit()
83 wcscpy(Password,Cmd->Password); in ExtractArchiveInit()
84 PasswordAll=(*Cmd->Password!=0); in ExtractArchiveInit()
98 EXTRACT_ARC_CODE CmdExtract::ExtractArchive(CommandData *Cmd) in ExtractArchive() argument
100 Archive Arc(Cmd); in ExtractArchive()
131 Cmd->ArcNames->Search(FirstVolName,NULL,false)) in ExtractArchive()
164 ExtractArchiveInit(Cmd,Arc); in ExtractArchive()
166 if (*Cmd->Command=='T' || *Cmd->Command=='I') in ExtractArchive()
167 Cmd->Test=true; in ExtractArchive()
171 if (*Cmd->Command=='I') in ExtractArchive()
172 Cmd->DisablePercentage=true; in ExtractArchive()
174 if (Cmd->Test) in ExtractArchive()
191 if (!ExtractCurrentFile(Cmd,Arc,Size,Repeat)) in ExtractArchive()
213 bool CmdExtract::ExtractCurrentFile(CommandData *Cmd,Archive &Arc,size_t HeaderSize,bool &Repeat) in ExtractCurrentFile() argument
215 char Command=*Cmd->Command; in ExtractCurrentFile()
239 SetExtraInfo(Cmd,Arc,DestFileName,*DestFileNameW ? DestFileNameW:NULL); in ExtractCurrentFile()
247 SetExtraInfoNew(Cmd,Arc,DestFileName,*DestFileNameW ? DestFileNameW:NULL); in ExtractCurrentFile()
272 !Cmd->Recurse && MatchedArgs>=Cmd->FileArgs->ItemsCount() && in ExtractCurrentFile()
286 int MatchNumber=Cmd->IsProcessFile(Arc.NewLhd,&EqualNames,MatchType); in ExtractCurrentFile()
289 if (Cmd->ExclPath==EXCL_BASEPATH) in ExtractCurrentFile()
291 *Cmd->ArcPath=0; in ExtractCurrentFile()
294 Cmd->FileArgs->Rewind(); in ExtractCurrentFile()
295 if (Cmd->FileArgs->GetString(Cmd->ArcPath,NULL,sizeof(Cmd->ArcPath),MatchNumber-1)) in ExtractCurrentFile()
296 *PointToName(Cmd->ArcPath)=0; in ExtractCurrentFile()
341 if (Cmd->VersionControl!=1 && !EqualNames) in ExtractCurrentFile()
343 if (Cmd->VersionControl==0) in ExtractCurrentFile()
346 if (Cmd->VersionControl-1==Version) in ExtractCurrentFile()
353 if (!Arc.IsArcDir() && Cmd->VersionControl>1) in ExtractCurrentFile()
382 if (RecVol.Restore(Cmd,Arc.FileName,Arc.FileNameW,true)) in ExtractCurrentFile()
408 Cmd->DllError=ERAR_BAD_DATA; in ExtractCurrentFile()
426 if (*Cmd->Password==0) in ExtractCurrentFile()
430 if (Cmd->Callback==NULL || in ExtractCurrentFile()
431 Cmd->Callback(UCM_NEEDPASSWORD,Cmd->UserData,(LPARAM)PasswordA,ASIZE(PasswordA))==-1) in ExtractCurrentFile()
433 GetWideName(PasswordA,NULL,Cmd->Password,ASIZE(Cmd->Password)); in ExtractCurrentFile()
435 wcscpy(Password,Cmd->Password); in ExtractCurrentFile()
450 switch(Cmd->AllYes ? 1:Ask(St(MYesNoAll))) in ExtractCurrentFile()
468 if (*Cmd->ExtrPath==0 && *Cmd->ExtrPathW!=0) in ExtractCurrentFile()
469 WideToChar(Cmd->ExtrPathW,DestFileName); in ExtractCurrentFile()
472 strcpy(DestFileName,Cmd->ExtrPath); in ExtractCurrentFile()
476 if (Cmd->AppendArcNameToPath) in ExtractCurrentFile()
488 size_t Length=strlen(Cmd->ArcPath); in ExtractCurrentFile()
489 if (Length>1 && IsPathDiv(Cmd->ArcPath[Length-1]) && in ExtractCurrentFile()
492 if (Length>0 && strnicomp(Cmd->ArcPath,ArcFileName,Length)==0) in ExtractCurrentFile()
503 bool AbsPaths=Cmd->ExclPath==EXCL_ABSPATH && Command=='X' && IsDriveDiv(':'); in ExtractCurrentFile()
510 if (Command=='E' || Cmd->ExclPath==EXCL_SKIPWHOLEPATH) in ExtractCurrentFile()
532 if (!WideName && *Cmd->ExtrPathW!=0) in ExtractCurrentFile()
542 if (*Cmd->ExtrPathW!=0) in ExtractCurrentFile()
543 wcscpy(DestFileNameW,Cmd->ExtrPathW); in ExtractCurrentFile()
545 CharToWide(Cmd->ExtrPath,DestFileNameW); in ExtractCurrentFile()
548 if (Cmd->AppendArcNameToPath) in ExtractCurrentFile()
565 GetWideName(Cmd->ArcPath,Cmd->ArcPathW,ArcPathW,ASIZE(ArcPathW)); in ExtractCurrentFile()
576 if (Command=='E' || Cmd->ExclPath==EXCL_SKIPWHOLEPATH) in ExtractCurrentFile()
589 if ((Cmd->FreshFiles || Cmd->UpdateFiles) && (Command=='E' || Command=='X')) in ExtractCurrentFile()
607 if (Cmd->FreshFiles) in ExtractCurrentFile()
616 Cmd->DllError=ERAR_MISSING_PASSWORD; in ExtractCurrentFile()
622 if (*Cmd->DllDestName) in ExtractCurrentFile()
624 strncpyz(DestFileName,Cmd->DllDestName,ASIZE(DestFileName)); in ExtractCurrentFile()
626 if (Cmd->DllOpMode!=RAR_EXTRACT) in ExtractCurrentFile()
629 if (*Cmd->DllDestNameW) in ExtractCurrentFile()
631 wcsncpyz(DestFileNameW,Cmd->DllDestNameW,ASIZE(DestFileNameW)); in ExtractCurrentFile()
633 if (Cmd->DllOpMode!=RAR_EXTRACT) in ExtractCurrentFile()
654 Cmd->DllError=ERAR_UNKNOWN_FORMAT; in ExtractCurrentFile()
663 if (!ExtrFile || Command=='P' || Command=='E' || Cmd->ExclPath==EXCL_SKIPWHOLEPATH) in ExtractCurrentFile()
673 if (Cmd->Test) in ExtractCurrentFile()
681 … MKDIR_CODE MDCode=MakeDir(DestFileName,DestNameW,!Cmd->IgnoreGeneralAttr,Arc.NewLhd.FileAttr); in ExtractCurrentFile()
689 …FileCreate(Cmd,NULL,DestFileName,DestNameW,Cmd->Overwrite,&UserReject,Arc.NewLhd.FullUnpSize,Arc.N… in ExtractCurrentFile()
693 MDCode=MakeDir(DestFileName,DestNameW,!Cmd->IgnoreGeneralAttr,Arc.NewLhd.FileAttr); in ExtractCurrentFile()
706 if (!Cmd->IgnoreGeneralAttr) in ExtractCurrentFile()
716 Cmd->DllError=ERAR_ECREATE; in ExtractCurrentFile()
723 if (Cmd->SetCompressedAttr && in ExtractCurrentFile()
728 Cmd->xmtime==EXTTIME_NONE ? NULL:&Arc.NewLhd.mtime, in ExtractCurrentFile()
729 Cmd->xctime==EXTTIME_NONE ? NULL:&Arc.NewLhd.ctime, in ExtractCurrentFile()
730 Cmd->xatime==EXTTIME_NONE ? NULL:&Arc.NewLhd.atime); in ExtractCurrentFile()
736 if (Cmd->Test && ExtrFile) in ExtractCurrentFile()
742 if ((Command=='E' || Command=='X') && ExtrFile && !Cmd->Test) in ExtractCurrentFile()
745 …if (!FileCreate(Cmd,&CurFile,DestFileName,DestNameW,Cmd->Overwrite,&UserReject,Arc.NewLhd.FullUnpS… in ExtractCurrentFile()
753 Cmd->DllError=ERAR_ECREATE; in ExtractCurrentFile()
763 …if (FileCreate(Cmd,&CurFile,DestFileName,NULL,Cmd->Overwrite,&UserReject,Arc.NewLhd.FullUnpSize,Ar… in ExtractCurrentFile()
803 switch(Cmd->Test ? 'T':Command) in ExtractCurrentFile()
818 if (!Cmd->DisablePercentage) in ExtractCurrentFile()
856 CurFile.SetAllowDelete(!Cmd->KeepBroken); in ExtractCurrentFile()
858 bool LinkCreateMode=!Cmd->Test && !SkipSolid; in ExtractCurrentFile()
899 mprintf("%s%s ",Cmd->DisablePercentage ? " ":"\b\b\b\b\b ",St(MOk)); in ExtractCurrentFile()
915 Cmd->DllError=ERAR_BAD_DATA; in ExtractCurrentFile()
929 if (Cmd->ClearArc) in ExtractCurrentFile()
932 if (!BrokenFile || Cmd->KeepBroken) in ExtractCurrentFile()
937 Cmd->xmtime==EXTTIME_NONE ? NULL:&Arc.NewLhd.mtime, in ExtractCurrentFile()
938 Cmd->xctime==EXTTIME_NONE ? NULL:&Arc.NewLhd.ctime, in ExtractCurrentFile()
939 Cmd->xatime==EXTTIME_NONE ? NULL:&Arc.NewLhd.atime); in ExtractCurrentFile()
942 if (Cmd->SetCompressedAttr && in ExtractCurrentFile()
947 Cmd->xmtime==EXTTIME_NONE ? NULL:&Arc.NewLhd.mtime, in ExtractCurrentFile()
948 Cmd->xatime==EXTTIME_NONE ? NULL:&Arc.NewLhd.atime); in ExtractCurrentFile()
949 if (!Cmd->IgnoreGeneralAttr) in ExtractCurrentFile()