--- exact-image-0.9.2/codecs/dcraw.h.orig 2015-07-16 17:20:12.000000000 +0200 +++ exact-image-0.9.2/codecs/dcraw.h 2017-02-27 21:56:41.760310486 +0100 @@ -4387,7 +4387,7 @@ */ void CLASS vng_interpolate() { - static const signed char *cp, terms[] = { + static const short *cp, terms[] = { -2,-2,+0,-1,0,0x01, -2,-2,+0,+0,1,0x01, -2,-1,-1,+0,0,0x01, -2,-1,+0,-1,0,0x02, -2,-1,+0,+0,0,0x03, -2,-1,+0,+1,1,0x01, -2,+0,+0,-1,0,0x06, -2,+0,+0,+0,1,0x02, -2,+0,+0,+1,0,0x03, @@ -6979,7 +6979,7 @@ { static const struct { const char *prefix; - short black, maximum, trans[12]; + unsigned short black, maximum; short trans[12]; } table[] = { { "AgfaPhoto DC-833m", 0, 0, /* DJC */ { 11438,-3762,-1115,-2409,9914,2497,-1227,2295,5300 } }, @@ -7915,11 +7915,11 @@ sprintf (name, "%s %s", make, model); for (i=0; i < sizeof table / sizeof *table; i++) if (!strncmp (name, table[i].prefix, strlen(table[i].prefix))) { - if (table[i].black) black = (ushort) table[i].black; - if (table[i].maximum) maximum = (ushort) table[i].maximum; + if (table[i].black) black = table[i].black; + if (table[i].maximum) maximum = table[i].maximum; if (table[i].trans[0]) { for (raw_color = j=0; j < 12; j++) - ((double *)cam_xyz)[j] = table[i].trans[j] / 10000.0; + cam_xyz[j / 3][j % 3] = table[i].trans[j] / 10000.0; cam_xyz_coeff (rgb_cam, cam_xyz); } break; @@ -9547,7 +9547,7 @@ strncpy (th->desc, desc, 512); strncpy (th->make, make, 64); strncpy (th->model, model, 64); - strcpy (th->soft, "dcraw v"DCRAW_VERSION); + strcpy (th->soft, "dcraw v" DCRAW_VERSION); t = localtime (×tamp); sprintf (th->date, "%04d:%02d:%02d %02d:%02d:%02d", t->tm_year+1900,t->tm_mon+1,t->tm_mday,t->tm_hour,t->tm_min,t->tm_sec);