221 |
|
cm = cm_resize(cm, 2*cm->nrows); |
222 |
|
for (c = 0; c < ncols; c++) { |
223 |
|
COLORV *cv = cm_lval(cm,r,c); |
224 |
< |
if (fscanf(fp, COLSPEC, cv, cv+1, cv+2) != 3) |
224 |
> |
if (fscanf(fp, COLSPEC, cv, cv+1, cv+2) != 3) { |
225 |
|
if ((nrows <= 0) & (r > 0) & !c) { |
226 |
|
cm = cm_resize(cm, maxrow=r); |
227 |
|
break; |
228 |
|
} else |
229 |
|
goto EOFerror; |
230 |
+ |
} |
231 |
|
} |
232 |
|
} |
233 |
|
while ((c = getc(fp)) != EOF) |
401 |
|
for (i = 0; i < cm1->ncols; i++) { |
402 |
|
const COLORV *cp1 = cm_lval(cm1,dr,i); |
403 |
|
const COLORV *cp2 = cm_lval(cm2,i,dc); |
404 |
< |
res[0] += (double)cp1[0] * (double)cp2[0]; |
405 |
< |
res[1] += (double)cp1[1] * (double)cp2[1]; |
406 |
< |
res[2] += (double)cp1[2] * (double)cp2[2]; |
404 |
> |
res[0] += cp1[0] * cp2[0]; |
405 |
> |
res[1] += cp1[1] * cp2[1]; |
406 |
> |
res[2] += cp1[2] * cp2[2]; |
407 |
|
} |
408 |
|
copycolor(dp, res); |
409 |
|
} |