Handle non-standard file name suffixes during decompression. Recoll should now index arbitrary compressed XML formats. Closes issue #93

This commit is contained in:
Jean-Francois Dockes
2012-05-21 11:50:09 +02:00
parent f34994d882
commit eeaf564d4e
2 changed files with 20 additions and 7 deletions
+18 -7
View File
@@ -17,14 +17,25 @@ outdir=$3
sinfile=`basename "$infile"`
#echo "rcluncomp: $sinfile" 1>&2
# What we do depends on suffix existence.
case "$sinfile" in
*.*)
cp "$infile" "$outdir/$sinfile" || exit 1
$uncomp "$outdir/$sinfile" || exit 1
uncompressed=`echo $outdir/*`
;;
*)
# File with a suffix: try to decompress in file mode so that the
# decompressor can transform the file name if it knows how. Try
# filter mode if this fails
*.*)
cp "$infile" "$outdir/$sinfile" || exit 1
# try uncompress
if $uncomp "$outdir/$sinfile" ; then
uncompressed=`echo $outdir/*`
else
rm -f "$outdir/sinfile"
$uncomp < "$infile" > "$outdir/$sinfile" || exit 1
uncompressed="$outdir/$sinfile"
fi
;;
# Suffixless file names: use filter mode
*)
$uncomp < "$infile" > "$outdir/$sinfile" || exit 1
uncompressed="$outdir/$sinfile"
;;