summaryrefslogtreecommitdiff
path: root/src/lcms.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lcms.c')
-rw-r--r--src/lcms.c23
1 files changed, 12 insertions, 11 deletions
diff --git a/src/lcms.c b/src/lcms.c
index 3dcb77c8a58..f37f843e500 100644
--- a/src/lcms.c
+++ b/src/lcms.c
@@ -34,6 +34,7 @@ typedef struct
#ifdef WINDOWSNT
# include <windows.h>
+# include "w32common.h"
# include "w32.h"
DEF_DLL_FN (cmsFloat64Number, cmsCIE2000DeltaE,
@@ -92,7 +93,7 @@ static bool
parse_lab_list (Lisp_Object lab_list, cmsCIELab *color)
{
#define PARSE_LAB_LIST_FIELD(field) \
- if (CONSP (lab_list) && NUMBERP (XCAR (lab_list))) \
+ if (CONSP (lab_list) && FIXED_OR_FLOATP (XCAR (lab_list))) \
{ \
color->field = XFLOATINT (XCAR (lab_list)); \
lab_list = XCDR (lab_list); \
@@ -137,15 +138,15 @@ chroma, and hue, respectively. The parameters each default to 1. */)
signal_error ("Invalid color", color1);
if (NILP (kL))
Kl = 1.0f;
- else if (!(NUMBERP (kL) && (Kl = XFLOATINT(kL))))
+ else if (!(FIXED_OR_FLOATP (kL) && (Kl = XFLOATINT(kL))))
wrong_type_argument(Qnumberp, kL);
if (NILP (kC))
Kc = 1.0f;
- else if (!(NUMBERP (kC) && (Kc = XFLOATINT(kC))))
+ else if (!(FIXED_OR_FLOATP (kC) && (Kc = XFLOATINT(kC))))
wrong_type_argument(Qnumberp, kC);
if (NILP (kL))
Kh = 1.0f;
- else if (!(NUMBERP (kH) && (Kh = XFLOATINT(kH))))
+ else if (!(FIXED_OR_FLOATP (kH) && (Kh = XFLOATINT(kH))))
wrong_type_argument(Qnumberp, kH);
return make_float (cmsCIE2000DeltaE (&Lab1, &Lab2, Kl, Kc, Kh));
@@ -183,7 +184,7 @@ static bool
parse_xyz_list (Lisp_Object xyz_list, cmsCIEXYZ *color)
{
#define PARSE_XYZ_LIST_FIELD(field) \
- if (CONSP (xyz_list) && NUMBERP (XCAR (xyz_list))) \
+ if (CONSP (xyz_list) && FIXED_OR_FLOATP (XCAR (xyz_list))) \
{ \
color->field = 100.0 * XFLOATINT (XCAR (xyz_list)); \
xyz_list = XCDR (xyz_list); \
@@ -202,7 +203,7 @@ static bool
parse_jch_list (Lisp_Object jch_list, cmsJCh *color)
{
#define PARSE_JCH_LIST_FIELD(field) \
- if (CONSP (jch_list) && NUMBERP (XCAR (jch_list))) \
+ if (CONSP (jch_list) && FIXED_OR_FLOATP (XCAR (jch_list))) \
{ \
color->field = XFLOATINT (XCAR (jch_list)); \
jch_list = XCDR (jch_list); \
@@ -223,7 +224,7 @@ static bool
parse_jab_list (Lisp_Object jab_list, lcmsJab_t *color)
{
#define PARSE_JAB_LIST_FIELD(field) \
- if (CONSP (jab_list) && NUMBERP (XCAR (jab_list))) \
+ if (CONSP (jab_list) && FIXED_OR_FLOATP (XCAR (jab_list))) \
{ \
color->field = XFLOATINT (XCAR (jab_list)); \
jab_list = XCDR (jab_list); \
@@ -243,7 +244,7 @@ parse_viewing_conditions (Lisp_Object view, const cmsCIEXYZ *wp,
cmsViewingConditions *vc)
{
#define PARSE_VIEW_CONDITION_FLOAT(field) \
- if (CONSP (view) && NUMBERP (XCAR (view))) \
+ if (CONSP (view) && FIXED_OR_FLOATP (XCAR (view))) \
{ \
vc->field = XFLOATINT (XCAR (view)); \
view = XCDR (view); \
@@ -251,10 +252,10 @@ parse_viewing_conditions (Lisp_Object view, const cmsCIEXYZ *wp,
else \
return false;
#define PARSE_VIEW_CONDITION_INT(field) \
- if (CONSP (view) && NATNUMP (XCAR (view))) \
+ if (CONSP (view) && FIXNATP (XCAR (view))) \
{ \
CHECK_RANGED_INTEGER (XCAR (view), 1, 4); \
- vc->field = XINT (XCAR (view)); \
+ vc->field = XFIXNUM (XCAR (view)); \
view = XCDR (view); \
} \
else \
@@ -554,7 +555,7 @@ Valid range of TEMPERATURE is from 4000K to 25000K. */)
}
#endif
- CHECK_NUMBER_OR_FLOAT (temperature);
+ CHECK_FIXNUM_OR_FLOAT (temperature);
tempK = XFLOATINT (temperature);
if (!(cmsWhitePointFromTemp (&whitepoint, tempK)))