Update of /cvsroot/ufraw/ufraw In directory vz-cvs-3.sog:/tmp/cvs-serv26228
Modified Files: dcraw.cc ufraw_conf.c ufraw_routines.c Log Message: Fix some GCC 4.6 compiler warnings. Index: dcraw.cc =================================================================== RCS file: /cvsroot/ufraw/ufraw/dcraw.cc,v retrieving revision 1.252 retrieving revision 1.253 diff -u -d -r1.252 -r1.253 --- dcraw.cc 28 Aug 2011 11:45:47 -0000 1.252 +++ dcraw.cc 3 Sep 2011 08:05:43 -0000 1.253 @@ -24,11 +24,6 @@ #define DCRAW_VERSION "9.10" -// dcraw plays with array bounds everywhere, there is no point to warn about it. -#if defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) && !defined(__INTEL_COMPILER) -#pragma GCC diagnostic ignored "-Warray-bounds" -#endif - #ifndef _GNU_SOURCE #define _GNU_SOURCE #endif @@ -2144,7 +2139,7 @@ 2,-26, 2,-13, 2,1, 3,-39, 4,16, 5,-55, 6,-76, 6,37 }; ushort huff[19][256]; - int row, col, tree, nreps, rep, step, i, c, s, r, x, y, val; + int row, col, tree, nreps, rep, step, i, j, k, c, s, r, x, y, val; short last[3] = { 16,16,16 }, mul[3], buf[3][3][386]; static const ushort pt[] = { 0,0, 1280,1344, 2320,3616, 3328,8000, 4095,16383, 65535,16383 }; @@ -2159,8 +2154,10 @@ s = kodak_cbpp == 243 ? 2 : 3; FORC(256) huff[18][c] = (8-s) << 8 | c >> s << s | 1 << (s-1); getbits(-1); - for (i=0; i < (int) sizeof(buf)/(int) sizeof(short); i++) - buf[0][0][i] = 2048; + for (i=0; i < 3; i++) + for (j=0; j < 3; j++) + for (k=0; k < 386; k++) + buf[i][j][k] = 2048; for (row=0; row < height; row+=4) { FORC3 mul[c] = getbits(6); FORC3 { @@ -3145,9 +3142,10 @@ black = (float (*)[3]) calloc (height, sizeof *black); for (row=0; row < height; row++) { - for (i=0; i < 6; i++) - ddft[0][0][i] = ddft[1][0][i] + - row / (height-1.0) * (ddft[2][0][i] - ddft[1][0][i]); + for (i=0; i < 3; i++) + for (j=0; j < 2; j++) + ddft[0][i][j] = ddft[1][i][j] + + row / (height-1.0) * (ddft[2][i][j] - ddft[1][i][j]); FORC3 black[row][c] = ( foveon_avg (image[row*width]+c, dscr[0], cfilt) + foveon_avg (image[row*width]+c, dscr[1], cfilt) * 3 @@ -3191,9 +3189,10 @@ FORC3 black[row][c] += fsum[c]/2 + total[c]/(total[3]*100.0); for (row=0; row < height; row++) { - for (i=0; i < 6; i++) - ddft[0][0][i] = ddft[1][0][i] + - row / (height-1.0) * (ddft[2][0][i] - ddft[1][0][i]); + for (i=0; i < 3; i++) + for (j=0; j < 2; j++) + ddft[0][i][j] = ddft[1][i][j] + + row / (height-1.0) * (ddft[2][i][j] - ddft[1][i][j]); pix = image[row*width]; memcpy (prev, pix, sizeof prev); frow = row / (height-1.0) * (dim[2]-1); @@ -5901,7 +5900,7 @@ void CLASS parse_phase_one (int base) { - unsigned entries, tag, type, len, data, save, i, c; + unsigned entries, tag, len, data, save, i, j, c; float romm_cam[3][3]; char *cp; @@ -5914,7 +5913,7 @@ get4(); while (entries--) { tag = get4(); - type = get4(); + fseek (ifp, 4, SEEK_CUR); len = get4(); data = get4(); save = ftell(ifp); @@ -5922,8 +5921,9 @@ switch (tag) { case 0x100: flip = "0653"[data & 3]-'0'; break; case 0x106: - for (i=0; i < 9; i++) - romm_cam[0][i] = getreal(11); + for (i=0; i < 3; i++) + for (j=0; j < 3; j++) + romm_cam[i][j] = getreal(11); romm_coeff (romm_cam); break; case 0x107: @@ -6895,7 +6895,7 @@ }; double cam_xyz[4][3]; char name[130]; - int i, j; + int i, j, k; sprintf (name, "%s %s", make, model); for (i=0; i < (int) sizeof table / (int) sizeof *table; i++) @@ -6903,8 +6903,9 @@ if (table[i].black) black = (ushort) table[i].black; if (table[i].maximum) maximum = (ushort) table[i].maximum; if (table[i].trans[0]) { - for (j=0; j < 12; j++) - cam_xyz[0][j] = table[i].trans[j] / 10000.0; + for (j=0; j < 4; j++) + for (k=0; k < 3; k++) + cam_xyz[j][k] = table[i].trans[3*j+k] / 10000.0; cam_xyz_coeff (cam_xyz); } break; Index: ufraw_routines.c =================================================================== RCS file: /cvsroot/ufraw/ufraw/ufraw_routines.c,v retrieving revision 1.115 retrieving revision 1.116 diff -u -d -r1.115 -r1.116 --- ufraw_routines.c 22 Aug 2011 17:05:17 -0000 1.115 +++ ufraw_routines.c 3 Sep 2011 08:05:44 -0000 1.116 @@ -409,7 +409,10 @@ locale = uf_set_locale_C(); context = g_markup_parse_context_new(&parser, 0, cp, NULL); line[max_path-1] = '\0'; - char *dummy = fgets(line, max_path - 1, in); + if (fgets(line, max_path - 1, in) == NULL) { + fclose(in); + return UFRAW_ERROR; + } while (!feof(in)) { if (!g_markup_parse_context_parse(context, line, strlen(line), &err)) { @@ -421,7 +424,10 @@ g_error_free(err); return UFRAW_ERROR; } - dummy = fgets(line, max_path, in); + if (fgets(line, max_path, in) == NULL) { + fclose(in); + return UFRAW_ERROR; + } } g_markup_parse_context_end_parse(context, NULL); g_markup_parse_context_free(context); Index: ufraw_conf.c =================================================================== RCS file: /cvsroot/ufraw/ufraw/ufraw_conf.c,v retrieving revision 1.177 retrieving revision 1.178 diff -u -d -r1.177 -r1.178 --- ufraw_conf.c 28 Aug 2011 05:05:08 -0000 1.177 +++ ufraw_conf.c 3 Sep 2011 08:05:44 -0000 1.178 @@ -816,7 +816,10 @@ user_data.ufrawQuark = g_quark_from_static_string("UFRaw"); context = g_markup_parse_context_new(&parser, 0, &user_data, NULL); line[max_path-1] = '\0'; - char *dummy = fgets(line, max_path - 1, in); + if (fgets(line, max_path - 1, in) == NULL) { + fclose(in); + return UFRAW_ERROR; + } while (!feof(in)) { if (!g_markup_parse_context_parse(context, line, strlen(line), &err)) { ufraw_message(UFRAW_ERROR, _("Error parsing '%s'\n%s"), @@ -831,7 +834,10 @@ g_error_free(err); return UFRAW_ERROR; } - dummy = fgets(line, max_path, in); + if (fgets(line, max_path, in) == NULL) { + fclose(in); + return UFRAW_ERROR; + } } g_markup_parse_context_end_parse(context, NULL); g_markup_parse_context_free(context); ------------------------------------------------------------------------------ Special Offer -- Download ArcSight Logger for FREE! Finally, a world-class log management solution at an even better price-free! And you'll get a free "Love Thy Logs" t-shirt when you download Logger. Secure your free ArcSight Logger TODAY! http://p.sf.net/sfu/arcsisghtdev2dev _______________________________________________ ufraw-cvs mailing list ufraw-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/ufraw-cvs