Merge pull request #2498 from bantu/ticket/12582

[ticket/12582] Strip away copyrighted ICC profile from images

* bantu/ticket/12582:
  [ticket/12582] Fix coding style.
  [ticket/12582] Remove set -e due to exiftool not liking 0 byte files.
  [ticket/12582] Strip away copyrighted ICC profile
  [ticket/12582] Change strip_icc_profiles.sh to only take a single file.
  [ticket/12582] Run strip_icc_profiles.sh on Travis CI.
  [ticket/12582] Overwrite inplace instead of creating _original files.
  [ticket/12582] Add script for strippping ICC profiles from images.
This commit is contained in:
Joas Schilling 2014-05-28 21:49:54 +02:00
commit f09799322e
3 changed files with 28 additions and 0 deletions

View file

@ -22,10 +22,12 @@ before_script:
- sh -c "if [ '$TRAVIS_PHP_VERSION' != '5.2' ]; then php ../composer.phar install --dev --no-interaction --prefer-source; fi"
- cd ..
- sh -c "if [ `php -r "echo (int) version_compare(PHP_VERSION, '5.3.19', '>=');"` = "1" ]; then travis/setup-webserver.sh; fi"
- sh -c "if [ '$TRAVIS_PHP_VERSION' = '5.5' -a '$DB' = 'mysql' ]; then sudo apt-get update; sudo apt-get install -y parallel libimage-exiftool-perl; fi"
script:
- sh -c "if [ '$TRAVIS_PHP_VERSION' = '5.2' ]; then phpunit --configuration travis/phpunit-$DB-5-2-travis.xml; else phpBB/vendor/bin/phpunit --configuration travis/phpunit-$DB-travis.xml; fi"
- sh -c "if [ '$TRAVIS_PHP_VERSION' = '5.5' -a '$DB' = 'mysql' -a '$TRAVIS_PULL_REQUEST' != 'false' ]; then git-tools/commit-msg-hook-range.sh origin/$TRAVIS_BRANCH..FETCH_HEAD; fi"
- sh -c "if [ '$TRAVIS_PHP_VERSION' = '5.5' -a '$DB' = 'mysql' ]; then find . -type f -not -path './phpBB/vendor/*' -iregex '.*\.\(gif\|jpg\|jpeg\|png\)$' | parallel --gnu --keep-order 'phpBB/develop/strip_icc_profiles.sh {}' || exit 1; fi"
matrix:
include:

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.1 KiB

After

Width:  |  Height:  |  Size: 6.5 KiB

View file

@ -0,0 +1,26 @@
#!/bin/sh
#
# @copyright (c) 2014 phpBB Group
# @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
#
if [ "$#" -ne 1 ]
then
SCRIPT=$(basename "$0")
echo "Description: Finds and strips ICC Profiles from given image file." >&2
echo "Usage: $SCRIPT /path/to/image/file" >&2
echo "Exit Status: 0 if no ICC profiles have been stripped, otherwise 1." >&2
echo "Requires: exiftool" >&2
exit 1
fi
FILE=$1
HASH_OLD=$(md5sum "$FILE")
exiftool -icc_profile"-<=" -overwrite_original_in_place "$FILE" > /dev/null 2>&1
HASH_NEW=$(md5sum "$FILE")
if [ "$HASH_OLD" != "$HASH_NEW" ]
then
echo "Stripped ICC Profile from $FILE."
exit 1
fi