1
Vote

JxrDecApp (and glue library) too picky about filename extensions

description

The command line interface of JxrDecApp is needlessly picky about the input and output filenames, making it pretty much impossible to use in a pipeline.

On the input side, we have PKCodecFactory_CreateDecoderFromFile() insisting that the filename have one of three extensions, though it doesn't care at all which of those three extensions it is, and it could just as well read the data from a file with any name -- say, "/dev/stdin".

The output side also insists on an extension, but at least here it is actually used to choose the output format.
However, it would be better if it was possible to specify the output format in some other way instead, so it could write to, say, /dev/stdout or (if it's already using stdout for messages) /dev/fd/n, or even /dev/null.

For extra credit, interpret -i- as "read from stdin" and and -o- as "write to stdout" (though obviously don't bother with the latter if there's code in the library that writes messages to stdout instead of stderr). Then it would even be feasible to use it in a pipeline on Windows!

(The dependency on input filenames is especially vexing when trying to run it over a crashes directory from American Fuzzy Lop)

comments