HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux vps-320ddf0a 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: lamphim (1008)
PHP: 7.4.3-4ubuntu2.29
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //proc/thread-self/root/usr/share/doc/optipng/examples/optipng-check
#!/bin/bash

# Read a list of file paths from stdin (such as produced by find) and verify
# that running optipng on them will produce an output file which looks
# identical. This is checked by converting original and new file to PPM and
# checking for identical output.
#
# Author: Martin Pitt <martin.pitt@ubuntu.com>
# (C) 2010 Canonical Ltd.
#
# This software is distributed under the same licensing and warranty terms as
# OptiPNG.  Please see the attached LICENSE for more info.

set -e

if ! type convert >/dev/null 2>&1; then
    echo "ERROR: Please install imagemagick" >&2
    exit 1
fi

workdir=`mktemp -d`
trap "rm -r '$workdir'" 0 HUP INT QUIT ILL ABRT FPE SEGV PIPE TERM
out=$workdir/out.png

while read f; do
    if ! optipng -o4 -quiet -out $out "$f"; then
    echo "SKIP: optipng cannot process $f"
    continue
    fi
    if ! cmp <(convert -depth 24 "$f" ppm:-) <(convert -depth 24 "$out" ppm:-); then
    echo "FAIL: Different result on $f" >&2
    exit 1
    fi
    echo "OK: $f"
    rm $out
done