diff options
author | Derek Sollenberger <djsollen@google.com> | 2017-03-22 18:54:25 +0000 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2017-03-22 18:54:30 +0000 |
commit | dda14b9b7ac13dba9214f484fc6270b3ccf4b68b (patch) | |
tree | 04975df7bad9c9c75c9fcf0aa52f2e3dac2a7716 /src/codec | |
parent | 70131b97f97f97d6fbcf4545b97827dfe8509654 (diff) |
Revert "Add support for writing icc profiles to the jpeg encoder"
This reverts commit 4ef01482025e2e629e35458aa214436d3b4138e8.
Reason for revert: This breaks the android autoroller.
Original change's description:
> Add support for writing icc profiles to the jpeg encoder
>
> Also, share the impl for skjpeg_error_mgr between the
> jpeg decoder and encoder. They are already identical
> anyway.
>
> BUG=skia:
>
> Change-Id: I4d67f28126388fef3057d62b6e0b203e21ed4afb
> Reviewed-on: https://skia-review.googlesource.com/10011
> Reviewed-by: Leon Scroggins <scroggo@google.com>
> Commit-Queue: Matt Sarett <msarett@google.com>
>
TBR=msarett@google.com,scroggo@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Change-Id: Idbb9918370e8384e39d6b7d1c3bcd9545ce4cfd1
Reviewed-on: https://skia-review.googlesource.com/10017
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Derek Sollenberger <djsollen@google.com>
Diffstat (limited to 'src/codec')
-rw-r--r-- | src/codec/SkJpegCodec.cpp | 13 | ||||
-rw-r--r-- | src/codec/SkJpegPriv.h | 36 | ||||
-rw-r--r-- | src/codec/SkJpegUtility.h | 8 |
3 files changed, 15 insertions, 42 deletions
diff --git a/src/codec/SkJpegCodec.cpp b/src/codec/SkJpegCodec.cpp index 624bc25845..55ee3b5dbc 100644 --- a/src/codec/SkJpegCodec.cpp +++ b/src/codec/SkJpegCodec.cpp @@ -44,7 +44,9 @@ static uint32_t get_endian_int(const uint8_t* data, bool littleEndian) { } const uint32_t kExifHeaderSize = 14; +const uint32_t kICCHeaderSize = 14; const uint32_t kExifMarker = JPEG_APP0 + 1; +const uint32_t kICCMarker = JPEG_APP0 + 2; static bool is_orientation_marker(jpeg_marker_struct* marker, SkCodec::Origin* orientation) { if (kExifMarker != marker->marker || marker->data_length < kExifHeaderSize) { @@ -110,10 +112,11 @@ static SkCodec::Origin get_exif_orientation(jpeg_decompress_struct* dinfo) { } static bool is_icc_marker(jpeg_marker_struct* marker) { - if (kICCMarker != marker->marker || marker->data_length < kICCMarkerHeaderSize) { + if (kICCMarker != marker->marker || marker->data_length < kICCHeaderSize) { return false; } + static const uint8_t kICCSig[] { 'I', 'C', 'C', '_', 'P', 'R', 'O', 'F', 'I', 'L', 'E', '\0' }; return !memcmp(marker->data, kICCSig, sizeof(kICCSig)); } @@ -157,8 +160,8 @@ static sk_sp<SkData> get_icc_profile(jpeg_decompress_struct* dinfo) { return nullptr; } markerSequence[markerIndex] = marker; - SkASSERT(marker->data_length >= kICCMarkerHeaderSize); - totalBytes += marker->data_length - kICCMarkerHeaderSize; + SkASSERT(marker->data_length >= kICCHeaderSize); + totalBytes += marker->data_length - kICCHeaderSize; } } @@ -177,8 +180,8 @@ static sk_sp<SkData> get_icc_profile(jpeg_decompress_struct* dinfo) { return nullptr; } - void* src = SkTAddOffset<void>(marker->data, kICCMarkerHeaderSize); - size_t bytes = marker->data_length - kICCMarkerHeaderSize; + void* src = SkTAddOffset<void>(marker->data, kICCHeaderSize); + size_t bytes = marker->data_length - kICCHeaderSize; memcpy(dst, src, bytes); dst = SkTAddOffset<void>(dst, bytes); } diff --git a/src/codec/SkJpegPriv.h b/src/codec/SkJpegPriv.h deleted file mode 100644 index e4e5b12763..0000000000 --- a/src/codec/SkJpegPriv.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright 2017 Google Inc. - * - * Use of this source code is governed by a BSD-style license that can be - * found in the LICENSE file. - */ - - -#ifndef SkJpegPriv_DEFINED -#define SkJpegPriv_DEFINED - -#include "SkStream.h" - -#include <setjmp.h> -// stdio is needed for jpeglib -#include <stdio.h> - -extern "C" { - #include "jpeglib.h" - #include "jerror.h" -} - -static constexpr uint32_t kICCMarker = JPEG_APP0 + 2; -static constexpr uint32_t kICCMarkerHeaderSize = 14; -static constexpr uint8_t kICCSig[] = { - 'I', 'C', 'C', '_', 'P', 'R', 'O', 'F', 'I', 'L', 'E', '\0', -}; - -/* - * Error handling struct - */ -struct skjpeg_error_mgr : jpeg_error_mgr { - jmp_buf fJmpBuf; -}; - -#endif diff --git a/src/codec/SkJpegUtility.h b/src/codec/SkJpegUtility.h index 33f4fbda8b..43391017b5 100644 --- a/src/codec/SkJpegUtility.h +++ b/src/codec/SkJpegUtility.h @@ -9,7 +9,6 @@ #ifndef SkJpegUtility_codec_DEFINED #define SkJpegUtility_codec_DEFINED -#include "SkJpegPriv.h" #include "SkStream.h" #include <setjmp.h> @@ -22,6 +21,13 @@ extern "C" { } /* + * Error handling struct + */ +struct skjpeg_error_mgr : jpeg_error_mgr { + jmp_buf fJmpBuf; +}; + +/* * Error handling function */ void skjpeg_err_exit(j_common_ptr cinfo); |