summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore2
-rw-r--r--src/cmstypes.c12
2 files changed, 7 insertions, 7 deletions
diff --git a/.gitignore b/.gitignore
index c195efc..764f6cf 100644
--- a/.gitignore
+++ b/.gitignore
@@ -57,3 +57,5 @@ DerivedData
/utils/linkicc/linkicc
/utils/jpgicc/jpgicc
*.tlog
+*.ipdb
+*.iobj
diff --git a/src/cmstypes.c b/src/cmstypes.c
index b571502..825b11e 100644
--- a/src/cmstypes.c
+++ b/src/cmstypes.c
@@ -1866,6 +1866,7 @@ cmsBool Type_LUT8_Write(struct _cms_typehandler_struct* self, cmsIOHANDLER* io,
mpe = NewLUT -> Elements;
if (mpe ->Type == cmsSigMatrixElemType) {
+ if (mpe->InputChannels != 3 || mpe->OutputChannels != 3) return FALSE;
MatMPE = (_cmsStageMatrixData*) mpe ->Data;
mpe = mpe -> Next;
}
@@ -1891,7 +1892,6 @@ cmsBool Type_LUT8_Write(struct _cms_typehandler_struct* self, cmsIOHANDLER* io,
return FALSE;
}
-
if (clut == NULL)
clutPoints = 0;
else
@@ -1905,16 +1905,14 @@ cmsBool Type_LUT8_Write(struct _cms_typehandler_struct* self, cmsIOHANDLER* io,
n = NewLUT->InputChannels * NewLUT->OutputChannels;
if (MatMPE != NULL) {
-
- for (i = 0; i < n; i++)
+
+ for (i = 0; i < 9; i++)
{
if (!_cmsWrite15Fixed16Number(io, MatMPE->Double[i])) return FALSE;
}
}
else {
-
- if (n != 9) return FALSE;
-
+
if (!_cmsWrite15Fixed16Number(io, 1)) return FALSE;
if (!_cmsWrite15Fixed16Number(io, 0)) return FALSE;
if (!_cmsWrite15Fixed16Number(io, 0)) return FALSE;
@@ -2193,7 +2191,7 @@ cmsBool Type_LUT16_Write(struct _cms_typehandler_struct* self, cmsIOHANDLER* io,
if (!_cmsWriteUInt8Number(io, 0)) return FALSE; // Padding
if (MatMPE != NULL) {
-
+
for (i = 0; i < 9; i++)
{
if (!_cmsWrite15Fixed16Number(io, MatMPE->Double[i])) return FALSE;