| 929 | } |
| 930 | |
| 931 | void UTIL_mirrorSourceFilesDirectories(const char** inFileNames, unsigned int nbFile, const char* outDirName) |
| 932 | { |
| 933 | unsigned int i = 0, validFilenamesNr = 0; |
| 934 | char** srcFileNames = (char **) malloc(nbFile * sizeof (char *)); |
| 935 | CONTROL(srcFileNames != NULL); |
| 936 | |
| 937 | /* check input filenames is valid */ |
| 938 | for (i = 0; i < nbFile; ++i) { |
| 939 | if (isFileNameValidForMirroredOutput(inFileNames[i])) { |
| 940 | char* fname = STRDUP(inFileNames[i]); |
| 941 | CONTROL(fname != NULL); |
| 942 | srcFileNames[validFilenamesNr++] = fname; |
| 943 | } |
| 944 | } |
| 945 | |
| 946 | if (validFilenamesNr > 0) { |
| 947 | makeDir(outDirName, DIR_DEFAULT_MODE); |
| 948 | makeMirroredDestDirs(srcFileNames, validFilenamesNr, outDirName); |
| 949 | } |
| 950 | |
| 951 | for (i = 0; i < validFilenamesNr; i++) |
| 952 | free(srcFileNames[i]); |
| 953 | free(srcFileNames); |
| 954 | } |
| 955 | |
| 956 | FileNamesTable* |
| 957 | UTIL_createExpandedFNT(const char** inputNames, size_t nbIfns, int followLinks) |
no test coverage detected