diff options
Diffstat (limited to 'tweak/refine.c')
-rw-r--r-- | tweak/refine.c | 27 |
1 files changed, 23 insertions, 4 deletions
diff --git a/tweak/refine.c b/tweak/refine.c index 6e06882..4bcdfbb 100644 --- a/tweak/refine.c +++ b/tweak/refine.c @@ -78,7 +78,6 @@ #include "numlib.h" #include "rspl.h" #include "xicc.h" -#include "xicc.h" #include "ui.h" #define COMPLOOKUP /* Compound with previous in ICM lookup rather than rspl */ @@ -388,10 +387,20 @@ main(int argc, char *argv[]) { spec = 1; tillum = icxIT_F10; } else { /* Assume it's a filename */ + inst_meas_type mt; + spec = 1; tillum = icxIT_custom; - if (read_xspect(&cust_tillum, na) != 0) - usage("Unable to read custom spectrum '%s'",na); + if (read_xspect(&cust_tillum, &mt, na) != 0) + usage("Unable to read target spectrum '%s'",na); + + if (mt != inst_mrt_none + && mt != inst_mrt_emission + && mt != inst_mrt_ambient + && mt != inst_mrt_emission_flash + && mt != inst_mrt_ambient_flash) { + error("Target illuminant '%s' is wrong measurement type",na); + } } } } @@ -425,10 +434,20 @@ main(int argc, char *argv[]) { spec = 1; illum = icxIT_F10; } else { /* Assume it's a filename */ + inst_meas_type mt; + spec = 1; illum = icxIT_custom; - if (read_xspect(&cust_illum, na) != 0) + if (read_xspect(&cust_illum, &mt, na) != 0) usage("Unable to read custom spectrum '%s'",na); + + if (mt != inst_mrt_none + && mt != inst_mrt_emission + && mt != inst_mrt_ambient + && mt != inst_mrt_emission_flash + && mt != inst_mrt_ambient_flash) { + error("CIE illuminant '%s' is wrong measurement type",na); + } } } |