author | ecalot
<ecalot> 2005-03-24 20:48:37 UTC |
committer | ecalot
<ecalot> 2005-03-24 20:48:37 UTC |
parent | ad5f56a74fb85a795a48a6f486459d67feb05045 |
PR/src/console/filedir.c | +14 | -11 |
PR/src/console/main.c | +1 | -1 |
PR/src/include/en.lang.pr.h | +1 | -1 |
PR/src/include/filedir.h | +1 | -1 |
diff --git a/PR/src/console/filedir.c b/PR/src/console/filedir.c index 168dd3e..8f3f53f 100644 --- a/PR/src/console/filedir.c +++ b/PR/src/console/filedir.c @@ -183,7 +183,7 @@ int isADatFile(const char* vResFile, const char* file) { } /* layer 2, module check Import type */ -int fileDirGetFilesImport(tFileDir2* list1,tFileDir2* files,const char* resfile) { +int fileDirGetFilesImport(tFileDir2* list1,tFileDir2* files,const char* resfile,int given) { char* file; char* opt; whatIs type; @@ -201,13 +201,19 @@ int fileDirGetFilesImport(tFileDir2* list1,tFileDir2* files,const char* resfile) /* a not found file may become either a directory or a file depending on the res file */ if (type==eNotFound) { - int isdat=isADatFile(resfile,file); - if (isdat<0) parseError=isdat; - - if (isdat) { + /* first check if the dat type was given by the -t option */ + if (given) { type=eFile; } else { - type=eDirectory; + /* if the dat type wasn't given by the -t option let's use all the files in the XML */ + int isdat; + isdat=isADatFile(resfile,file); + if (isdat<0) parseError=isdat; + if (isdat) { + type=eFile; + } else { + type=eDirectory; + } } } @@ -273,9 +279,6 @@ int fileDirGetFilesExport(tFileDir2* list1,tFileDir2* files,int notHasRecursiveF return 0; } - - - /* layer 3, primitives */ void fileDirClearOptions(tFileDir2* list1) { @@ -315,7 +318,7 @@ void fileDirAddOption(tFileDir2* list1, const char* option) { -int fileDirGetFiles(tFileDir2* list1,tFileDir2* files,int hasExportFlag,int notHasRecursiveFlag,const char* resfile) { +int fileDirGetFiles(tFileDir2* list1,tFileDir2* files,int hasExportFlag,int notHasRecursiveFlag,const char* resfile,int given) { /* case 1: * import from more than one directory */ if (!hasExportFlag&&!notHasRecursiveFlag) { @@ -330,7 +333,7 @@ int fileDirGetFiles(tFileDir2* list1,tFileDir2* files,int hasExportFlag,int notH if (hasExportFlag) return fileDirGetFilesExport(list1,files,notHasRecursiveFlag); else - return fileDirGetFilesImport(list1,files,resfile); + return fileDirGetFilesImport(list1,files,resfile,given); } diff --git a/PR/src/console/main.c b/PR/src/console/main.c index ba50915..0f7e3e9 100644 --- a/PR/src/console/main.c +++ b/PR/src/console/main.c @@ -173,7 +173,7 @@ int main (int argc, char **argv) { } else { fileDirAddOption(&input,"."); } - c=fileDirGetFiles(&input,&files,!hasFlag(import_flag),!hasFlag(recursive_flag),resFile); + c=fileDirGetFiles(&input,&files,!hasFlag(import_flag),!hasFlag(recursive_flag),resFile,datFileName!=NULL); switch (c) { case -20: /* import from more than one directory */ diff --git a/PR/src/include/en.lang.pr.h b/PR/src/include/en.lang.pr.h index 6090b2e..ce26a9b 100644 --- a/PR/src/include/en.lang.pr.h +++ b/PR/src/include/en.lang.pr.h @@ -143,7 +143,7 @@ NULL,NULL,NULL,\ is not a dat file)\n\ -t, --datfile=DATFILE specifies a dat file to read resources\n\ different than the original file\n\ - -z, --compression-level=n a number from 1 to 7 specifying how hard has PR\n\ + -z, --compression-level=N a number from 1 to 7 specifying how hard has PR\n\ to try to reduce the generated dat files.\n" #define PARSING_HELP_PART4 "\ diff --git a/PR/src/include/filedir.h b/PR/src/include/filedir.h index 28f29b7..e876c4e 100644 --- a/PR/src/include/filedir.h +++ b/PR/src/include/filedir.h @@ -53,7 +53,7 @@ typedef struct { void fileDirClearOptions(tFileDir2* list1); void fileDirAddOption(tFileDir2* list1, const char* option); -int fileDirGetFiles(tFileDir2* list1,tFileDir2* files,int hasExportFlag,int notHasRecursiveFlag,const char* vResFile); +int fileDirGetFiles(tFileDir2* list1,tFileDir2* files,int hasExportFlag,int notHasRecursiveFlag,const char* resfile,int givenDatFilename); char* fileDirGetFile(tFileDir2* files,char** datfile); #endif