summaryrefslogtreecommitdiff
path: root/third_party/lcms/src/cmsgamma.c
diff options
context:
space:
mode:
authorNicolas Pena <npm@chromium.org>2017-08-14 10:36:01 -0400
committerChromium commit bot <commit-bot@chromium.org>2017-08-14 15:02:17 +0000
commit0bd847232a1f430c70dd9d8df177ce68a3cde010 (patch)
tree15cec8c11493549f1974ae2f6aeac58234c176d2 /third_party/lcms/src/cmsgamma.c
parentdff02cee2d2410d81a55c59345fb38b5aac8a457 (diff)
downloadpdfium-0bd847232a1f430c70dd9d8df177ce68a3cde010.tar.xz
LCMS: upgrade to 2.8
This CL upgrades LCMS from version 2.6 to 2.8. All changes from LCMS original version 2.8 are stored in patch files: - Patch 0: memory management modifications to use PDFium methods. This was previously not in any patch, so the changes were manually applied. - Patches 1-5: new patch files corresponding to old changes that can be seen in the history, but did not previously have patch files. - Patches 6-25: previous patches (patch numbers shifted by 6). The one for from16-to-8-overflow.patch was deleted as it was already upstream. Some patches did not apply cleanly so their .patch files were modified. - Patch 26: as I just moved files directly, unsupported characters were moved in unchanged, so I had to fix all of them: e with tilde and other characters were replaced to allow compilation on Windows. - Patch 27: Went over the code and re-applied changes that included comments clearly indicating this was Foxit. These changes are all already seen in the initial PDFium commit. Change-Id: Ic1d84e54803ef9e6b280ef7619bbf0b757312fbf Reviewed-on: https://pdfium-review.googlesource.com/10590 Commit-Queue: Nicolás Peña <npm@chromium.org> Reviewed-by: dsinclair <dsinclair@chromium.org>
Diffstat (limited to 'third_party/lcms/src/cmsgamma.c')
-rw-r--r--third_party/lcms/src/cmsgamma.c55
1 files changed, 25 insertions, 30 deletions
diff --git a/third_party/lcms/src/cmsgamma.c b/third_party/lcms/src/cmsgamma.c
index 97aeb7cc16..6e36cf462e 100644
--- a/third_party/lcms/src/cmsgamma.c
+++ b/third_party/lcms/src/cmsgamma.c
@@ -23,7 +23,6 @@
//
//---------------------------------------------------------------------------------
//
-
#include "lcms2_internal.h"
// Tone curves are powerful constructs that can contain curves specified in diverse ways.
@@ -568,7 +567,7 @@ cmsFloat64Number DefaultEvalParametricFn(cmsInt32Number Type, const cmsFloat64Nu
return Val;
}
-// Evaluate a segmented funtion for a single value. Return -1 if no valid segment found .
+// Evaluate a segmented function for a single value. Return -1 if no valid segment found .
// If fn type is 0, perform an interpolation on the table
static
cmsFloat64Number EvalSegmentedFn(const cmsToneCurve *g, cmsFloat64Number R)
@@ -750,20 +749,19 @@ void CMSEXPORT cmsFreeToneCurve(cmsToneCurve* Curve)
{
cmsContext ContextID;
- // added by Xiaochuan Liu
- // Curve->InterpParams may be null
+ // added by Xiaochuan Liu
+ // Curve->InterpParams may be null
if (Curve == NULL || Curve->InterpParams == NULL) return;
ContextID = Curve ->InterpParams->ContextID;
_cmsFreeInterpParams(Curve ->InterpParams);
- Curve ->InterpParams = NULL;
+ Curve ->InterpParams = NULL;
- if (Curve -> Table16)
- {
+ if (Curve -> Table16) {
_cmsFree(ContextID, Curve ->Table16);
- Curve ->Table16 = NULL;
- }
+ Curve ->Table16 = NULL;
+ }
if (Curve ->Segments) {
@@ -773,33 +771,30 @@ void CMSEXPORT cmsFreeToneCurve(cmsToneCurve* Curve)
if (Curve ->Segments[i].SampledPoints) {
_cmsFree(ContextID, Curve ->Segments[i].SampledPoints);
- Curve ->Segments[i].SampledPoints = NULL;
+ Curve ->Segments[i].SampledPoints = NULL;
}
- if (Curve ->SegInterp[i] != 0)
- {
+ if (Curve ->SegInterp[i] != 0) {
_cmsFreeInterpParams(Curve->SegInterp[i]);
- Curve->SegInterp[i] = NULL;
- }
+ Curve->SegInterp[i] = NULL;
+ }
}
_cmsFree(ContextID, Curve ->Segments);
- Curve ->Segments = NULL;
+ Curve ->Segments = NULL;
_cmsFree(ContextID, Curve ->SegInterp);
- Curve ->SegInterp = NULL;
+ Curve ->SegInterp = NULL;
}
- if (Curve -> Evals)
- {
+ if (Curve -> Evals) {
_cmsFree(ContextID, Curve -> Evals);
- Curve -> Evals = NULL;
- }
-
- if (Curve)
- {
- _cmsFree(ContextID, Curve);
- Curve = NULL;
- }
+ Curve -> Evals = NULL;
+ }
+
+ if (Curve) {
+ _cmsFree(ContextID, Curve);
+ Curve = NULL;
+ }
}
// Utility function, free 3 gamma tables
@@ -818,10 +813,10 @@ void CMSEXPORT cmsFreeToneCurveTriple(cmsToneCurve* Curve[3])
// Duplicate a gamma table
cmsToneCurve* CMSEXPORT cmsDupToneCurve(const cmsToneCurve* In)
-{
- // Xiaochuan Liu
- // fix openpdf bug(mantis id:0055683, google id:360198)
- // the function CurveSetElemTypeFree in cmslut.c also needs to check pointer
+{
+ // Xiaochuan Liu
+ // fix openpdf bug(mantis id:0055683, google id:360198)
+ // the function CurveSetElemTypeFree in cmslut.c also needs to check pointer
if (In == NULL || In ->InterpParams == NULL || In ->Segments == NULL || In ->Table16 == NULL) return NULL;
return AllocateToneCurveStruct(In ->InterpParams ->ContextID, In ->nEntries, In ->nSegments, In ->Segments, In ->Table16);