Don't use more than one temp file

This commit is contained in:
Dan Church 2021-06-29 11:56:12 -05:00
parent d7a4fc9b8e
commit 5b63a4c4df
Signed by: h3xx
GPG Key ID: EA2BF379CD2CDBD0
1 changed files with 9 additions and 7 deletions

16
optipdf
View File

@ -118,20 +118,22 @@ use_smaller() {
}
TEMP0=$(mktemp -t "${0##*/}.XXXXXX")
TEMP1=$(mktemp -t "${0##*/}.XXXXXX")
TEMP_FILES+=("$TEMP0" "$TEMP0")
TEMP=$(mktemp -t "${0##*/}.XXXXXX")
TEMP_FILES+=("$TEMP")
ERRORS=0
FREED_TOTAL=0
for FILE; do
rm -f -- "$TEMP0" "$TEMP1"
rm -f -- "$TEMP"
BEGIN_FILESIZE=$(file_size "$FILE")
if
qpdf --stream-data=uncompress -- "$FILE" "$TEMP0" &&
qpdf --stream-data=compress -- "$TEMP0" "$TEMP1" &&
use_smaller "$FILE" "$TEMP1"; then
qpdf \
--recompress-flate \
--stream-data=compress \
-- \
"$FILE" "$TEMP" &&
use_smaller "$FILE" "$TEMP"; then
END_FILESIZE=$(file_size "$FILE")
FREED=$(( BEGIN_FILESIZE - END_FILESIZE ))