Generic parser is more like a fallback, then if the file was already
parsed by some other parser it should ignore that entry.
time_t dtime; /**< deletion time */
time_t itime; /**< insert time */
size_t size; /**< file size in bytes */
+ unsigned char parsed : 1; /**< if file was already successfully parsed before */
};
struct lms_context {
_ctxt_init(&ctxt, lms, db);
+ finfo->parsed = 0;
failed = 0;
available = 0;
for (i = 0; i < lms->n_parsers; i++) {
r = plugin->parse(plugin, &ctxt, finfo, parser_match[i]);
if (r != 0)
failed++;
+ else
+ finfo->parsed = 1;
}
}
struct lms_string_size container = { };
bool video = false;
+ if (finfo->parsed)
+ return 0;
+
if ((ret = avformat_open_input(&fmt_ctx, finfo->path, NULL, NULL)))
return ret;