DEBUG_puts("1mimeAddFilter: Adding new filter.");
cupsArrayAdd(mime->filters, temp);
+ cupsArrayAdd(mime->srcs, temp);
}
/*
mime_type_t *dst, /* I - Destination file type */
int *cost) /* O - Cost of filters */
{
+ cups_array_t *filters; /* Array of filters to run */
+
+
/*
* Range-check the input...
*/
* Find the filters...
*/
- return (mime_find_filters(mime, src, srcsize, dst, cost, NULL));
+ filters = mime_find_filters(mime, src, srcsize, dst, cost, NULL);
+
+ DEBUG_printf(("1mimeFilter2: Returning %d filter(s), cost %d:",
+ cupsArrayCount(filters), cost ? *cost : -1));
+#ifdef DEBUG
+ {
+ mime_filter_t *filter; /* Current filter */
+
+ for (filter = (mime_filter_t *)cupsArrayFirst(filters);
+ filter;
+ filter = (mime_filter_t *)cupsArrayNext(filters))
+ DEBUG_printf(("1mimeFilter2: %s/%s %s/%s %d %s", filter->src->super,
+ filter->src->type, filter->dst->super, filter->dst->type,
+ filter->cost, filter->filter));
+ }
+#endif /* DEBUG */
+
+ return (filters);
}
*filter; /* Matching filter */
- DEBUG_printf(("6mimeFilterLookup(mime=%p, src=%p(%s/%s), dst=%p(%s/%s))", mime,
+ DEBUG_printf(("2mimeFilterLookup(mime=%p, src=%p(%s/%s), dst=%p(%s/%s))", mime,
src, src ? src->super : "???", src ? src->type : "???",
dst, dst ? dst->super : "???", dst ? dst->type : "???"));
key.dst = dst;
filter = (mime_filter_t *)cupsArrayFind(mime->filters, &key);
- DEBUG_printf(("7mimeFilterLookup: Returning %p(%s).", filter,
+ DEBUG_printf(("3mimeFilterLookup: Returning %p(%s).", filter,
filter ? filter->filter : "???"));
return (filter);
}
{
DEBUG_printf(("3mime_find_filters: Returning 1 filter, cost %d:",
mincost));
- DEBUG_printf(("3mime_find_filters: %s (cost=%d)", current->filter,
- current->cost));
+ DEBUG_printf(("3mime_find_filters: %s/%s %s/%s %d %s",
+ current->src->super, current->src->type,
+ current->dst->super, current->dst->type,
+ current->cost, current->filter));
return (mintemp);
}
}
for (current = (mime_filter_t *)cupsArrayFirst(temp);
current;
current = (mime_filter_t *)cupsArrayNext(temp))
- DEBUG_printf(("3mime_find_filters: %s (cost=%d)", current->filter,
- current->cost));
+ DEBUG_printf(("3mime_find_filters: %s/%s %s/%s %d %s",
+ current->src->super, current->src->type,
+ current->dst->super, current->dst->type,
+ current->cost, current->filter));
#endif /* DEBUG */
return (temp);
for (current = (mime_filter_t *)cupsArrayFirst(mintemp);
current;
current = (mime_filter_t *)cupsArrayNext(mintemp))
- DEBUG_printf(("3mime_find_filters: %s (cost=%d)", current->filter,
- current->cost));
+ DEBUG_printf(("3mime_find_filters: %s/%s %s/%s %d %s",
+ current->src->super, current->src->type,
+ current->dst->super, current->dst->type,
+ current->cost, current->filter));
#endif /* DEBUG */
if (cost)
unsigned char *bufptr; /* Pointer into buffer */
- DEBUG_printf(("2mime_check_rules(filename=\"%s\", fb=%p, rules=%p)", filename,
+ DEBUG_printf(("4mime_check_rules(filename=\"%s\", fb=%p, rules=%p)", filename,
fb, rules));
if (rules == NULL)
break;
case MIME_MAGIC_STRING :
- DEBUG_printf(("3mime_check_rules: string(%d, \"%s\")", rules->offset,
+ DEBUG_printf(("5mime_check_rules: string(%d, \"%s\")", rules->offset,
rules->value.stringv));
/*
sizeof(fb->buffer));
fb->offset = rules->offset;
- DEBUG_printf(("3mime_check_rules: loaded %d byte fb->buffer at %d, starts "
+ DEBUG_printf(("5mime_check_rules: loaded %d byte fb->buffer at %d, starts "
"with \"%c%c%c%c\".",
fb->length, fb->offset, fb->buffer[0], fb->buffer[1],
fb->buffer[2], fb->buffer[3]));
else
result = (memcmp(fb->buffer + rules->offset - fb->offset,
rules->value.stringv, rules->length) == 0);
- DEBUG_printf(("3mime_check_rules: result=%d", result));
+ DEBUG_printf(("5mime_check_rules: result=%d", result));
break;
case MIME_MAGIC_ISTRING :
* the the rule set is false...
*/
- DEBUG_printf(("3mime_check_rules: result of test %p (MIME_MAGIC_%s) is %d",
+ DEBUG_printf(("5mime_check_rules: result of test %p (MIME_MAGIC_%s) is %d",
rules, debug_ops[rules->op], result));
if ((result && logic == MIME_MAGIC_OR) ||