exclusion_tags = tag;
}
-static void
+void
exclusion_tag_warning (const char *dirname, const char *tagname,
const char *message)
{
message));
}
-static enum exclusion_tag_type
+enum exclusion_tag_type
check_exclusion_tags (char *dirname, const char **tag_file_name)
{
static char *tagname;
static size_t tagsize;
struct exclusion_tag *tag;
size_t dlen = strlen (dirname);
+ int addslash = dirname[dlen-1] != '/';
char *nptr = NULL;
for (tag = exclusion_tags; tag; tag = tag->next)
{
- size_t size = dlen + tag->length + 1;
+ size_t size = dlen + addslash + tag->length + 1;
if (size > tagsize)
{
tagsize = size;
{
strcpy (tagname, dirname);
nptr = tagname + dlen;
+ if (addslash)
+ *nptr++ = '/';
}
strcpy (nptr, tag->name);
if (access (tagname, F_OK) == 0
switch (check_exclusion_tags (st->orig_file_name, &tag_file_name))
{
- case exclusion_tag_none:
case exclusion_tag_all:
+ /* Handled in dump_file0 */
+ break;
+
+ case exclusion_tag_none:
{
char const *entry;
size_t entry_len;