diff options
author | FRIGN <dev@frign.de> | 2016-09-19 19:07:27 +0200 |
---|---|---|
committer | FRIGN <dev@frign.de> | 2016-09-19 19:07:27 +0200 |
commit | 728997ff9662e6790165fd76296bef9ff8a09d93 (patch) | |
tree | ddf67b85d653a5f67abdcdcc4974c6f5751a529f /2ff | |
parent | 1f8903d1689e5f796fbe227587081d28f864cb07 (diff) |
2ff: Make it idempotent and clean it up a bit
If a file begins with "farbfeld", we just pass it through.
Diffstat (limited to '2ff')
-rwxr-xr-x | 2ff | 28 |
1 files changed, 20 insertions, 8 deletions
@@ -5,20 +5,32 @@ if [ "$#" -ne 0 ]; then fi TMP=$(mktemp) -cat > "$TMP"; +cat > "$TMP" -FORMAT=$(file -ib "$TMP" | cut -d ";" -f 1); +if [ "$(head -c 8 "$TMP")" = "farbfeld" ]; then + cat < "$TMP" + exit 0 +fi + +FORMAT=$(file -ib "$TMP" | cut -d ";" -f 1) case "$FORMAT" in - image/png) png2ff < "$TMP"; ret=$? ;; - image/jpeg) jpg2ff < "$TMP"; ret=$? ;; - *) convert "$TMP" png:- 2>/dev/null | png2ff 2>/dev/null; ret=$? ;; +image/png) + png2ff < "$TMP" + ;; +image/jpeg) + jpg2ff < "$TMP" + ;; +*) + convert "$TMP" png:- 2>/dev/null | png2ff 2>/dev/null + ;; esac -rm "$TMP"; +ret=$? +rm "$TMP" if [ $ret -ne 0 ]; then - printf "%s: failed to convert %s\n" "$0" "$FORMAT" >&2; + printf "%s: failed to convert from %s\n" "$0" "$FORMAT" >&2 fi -exit $ret; +exit $ret |