version 1.59, 2013/06/05 17:48:14 |
version 1.60, 2013/06/05 20:27:11 |
|
|
* Disallow duplicate (hard-linked) files. |
* Disallow duplicate (hard-linked) files. |
*/ |
*/ |
if (FTS_F == ff->fts_info) { |
if (FTS_F == ff->fts_info) { |
|
if (0 == strcmp(path, MANDOC_DB)) |
|
continue; |
if ( ! use_all && ff->fts_level < 2) { |
if ( ! use_all && ff->fts_level < 2) { |
if (warnings) |
if (warnings) |
say(path, "Extraneous file"); |
say(path, "Extraneous file"); |
|
|
if (warnings) |
if (warnings) |
say(path, "Duplicate file"); |
say(path, "Duplicate file"); |
continue; |
continue; |
} |
} else if (NULL == (sec = |
|
strrchr(ff->fts_name, '.'))) { |
cp = ff->fts_name; |
if ( ! use_all) { |
|
|
if (0 == strcmp(cp, "mandocdb.db")) { |
|
if (warnings) |
|
say(path, "Skip database"); |
|
continue; |
|
} else if (NULL != (cp = strrchr(cp, '.'))) { |
|
if (0 == strcmp(cp + 1, "html")) { |
|
if (warnings) |
if (warnings) |
say(path, "Skip html"); |
say(path, |
|
"No filename suffix"); |
continue; |
continue; |
} else if (0 == strcmp(cp + 1, "gz")) { |
|
if (warnings) |
|
say(path, "Skip gz"); |
|
continue; |
|
} else if (0 == strcmp(cp + 1, "ps")) { |
|
if (warnings) |
|
say(path, "Skip ps"); |
|
continue; |
|
} else if (0 == strcmp(cp + 1, "pdf")) { |
|
if (warnings) |
|
say(path, "Skip pdf"); |
|
continue; |
|
} |
} |
|
} else if (0 == strcmp(++sec, "html")) { |
|
if (warnings) |
|
say(path, "Skip html"); |
|
continue; |
|
} else if (0 == strcmp(sec, "gz")) { |
|
if (warnings) |
|
say(path, "Skip gz"); |
|
continue; |
|
} else if (0 == strcmp(sec, "ps")) { |
|
if (warnings) |
|
say(path, "Skip ps"); |
|
continue; |
|
} else if (0 == strcmp(sec, "pdf")) { |
|
if (warnings) |
|
say(path, "Skip pdf"); |
|
continue; |
|
} else if ( ! use_all && |
|
((FORM_SRC == dform && strcmp(sec, dsec)) || |
|
(FORM_CAT == dform && strcmp(sec, "0")))) { |
|
if (warnings) |
|
say(path, "Wrong filename suffix"); |
|
continue; |
|
} else { |
|
sec[-1] = '\0'; |
|
sec = stradd(sec); |
} |
} |
|
|
if (NULL != (sec = strrchr(ff->fts_name, '.'))) { |
|
*sec = '\0'; |
|
sec = stradd(sec + 1); |
|
} |
|
name = stradd(ff->fts_name); |
name = stradd(ff->fts_name); |
ofadd(dform, path, |
ofadd(dform, path, |
name, dsec, sec, arch, ff->fts_statp); |
name, dsec, sec, arch, ff->fts_statp); |
continue; |
continue; |
} else if (FTS_D != ff->fts_info && |
} else if (FTS_D != ff->fts_info && |
FTS_DP != ff->fts_info) |
FTS_DP != ff->fts_info) { |
|
if (warnings) |
|
say(path, "Not a regular file"); |
continue; |
continue; |
|
} |
|
|
switch (ff->fts_level) { |
switch (ff->fts_level) { |
case (0): |
case (0): |