From 6852d18ab6edd5f4bfed92eb784edac12e64c2de Mon Sep 17 00:00:00 2001 From: Reuben Thomas Date: Tue, 30 Apr 2024 10:29:00 +0200 Subject: [PATCH] Sanity-check the output of 'paper' --- bin/pdfjam | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/bin/pdfjam b/bin/pdfjam index 80f8aba..71412b9 100755 --- a/bin/pdfjam +++ b/bin/pdfjam @@ -198,16 +198,20 @@ preamble='' ## Default LaTeX preamble string. ## ## Get default paper size from libpaper >= 2 if possible, otherwise guess A4 ## +paperspec= if command -v paper >/dev/null ; then paperspec=$(paper) - paperdimensions=$(echo "$paperspec" | cut -f 2 -d " ") - paperunit=$(echo "$paperspec" | cut -f 3 -d " ") - if test "$paperunit" = "pt"; then paperunit=bp; fi - paperwidth=$(echo "$paperdimensions" | cut -f 1 -d "x") - paperheight=$(echo "$paperdimensions" | cut -f 2 -d "x") - papersize="papersize={$paperwidth$paperunit,$paperheight$paperunit}" - paper='' ## We might not have a LaTeX-compatible name -else + if echo "$paperspec" | grep -q '^.*: '; then + paperdimensions=$(echo "$paperspec" | cut -f 2 -d " ") + paperunit=$(echo "$paperspec" | cut -f 3 -d " ") + if test "$paperunit" = "pt"; then paperunit=bp; fi + paperwidth=$(echo "$paperdimensions" | cut -f 1 -d "x") + paperheight=$(echo "$paperdimensions" | cut -f 2 -d "x") + papersize="papersize={$paperwidth$paperunit,$paperheight$paperunit}" + paper='' ## We might not have a LaTeX-compatible name + fi +fi +if test -z "$paperspec"; then paper='a4paper' ## fallback paper size is ISO A4 papersize='' ## clear papersize fi