Update of /cvsroot/ufraw/ufraw In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv27786 Modified Files: dcraw.cc dcraw.h dcraw_api.cc dcraw_indi.c ufraw_conf.c ufraw_delete.c ufraw_preview.c ufraw_routines.c Log Message: Convert ifname to utf8 for dcraw_message() calls. Code in DCRaw::main() was not fixed since it is never called from GTK. Use the newly discovered g_locale_display_name() instead of g_locale_to_utf8(). Thanks Andrew Zabolotny for the tips. Index: ufraw_delete.c =================================================================== RCS file: /cvsroot/ufraw/ufraw/ufraw_delete.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- ufraw_delete.c 6 Oct 2007 12:45:22 -0000 1.5 +++ ufraw_delete.c 31 May 2008 19:31:12 -0000 1.6 @@ -26,7 +26,7 @@ long ufraw_delete(void *widget, ufraw_data *uf) { if ( !g_file_test(uf->filename, G_FILE_TEST_EXISTS) ) { - char *ufile = g_filename_to_utf8(uf->filename, -1, NULL, NULL, NULL); + char *ufile = g_filename_display_name(uf->filename); ufraw_message(UFRAW_ERROR, _("Raw file '%s' missing."), ufile); g_free(ufile); return UFRAW_ERROR; @@ -46,7 +46,7 @@ char *path = g_path_get_dirname(uf->filename); GDir *dir = g_dir_open(path, 0, NULL); if ( dir==NULL ) { - char *upath = g_filename_to_utf8(path, -1, NULL, NULL, NULL); + char *upath = g_filename_display_name(path); ufraw_message(UFRAW_ERROR, _("Error reading directory '%s'."), upath); g_free(upath); g_free(path); @@ -67,7 +67,7 @@ GList *fileList = NULL; // Check button for raw file - char *ufile = g_filename_to_utf8(uf->filename, -1, NULL, NULL, NULL); + char *ufile = g_filename_display_name(uf->filename); GtkWidget *button = gtk_check_button_new_with_label(ufile); buttonList = g_list_append(buttonList, button); g_free(ufile); @@ -81,7 +81,7 @@ if ( strncmp(file, rawBase, rawBaseLen)==0 && strcmp(file, base)!=0 ) { char *filename = g_build_filename(dirname, file, NULL); - char *ufile = g_filename_to_utf8(filename, -1, NULL, NULL, NULL); + char *ufile = g_filename_display_name(filename); button = gtk_check_button_new_with_label(ufile); buttonList = g_list_append(buttonList, button); g_free(ufile); @@ -102,8 +102,7 @@ gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(buttonList->data)) ) ) { if ( g_unlink(fileList->data)!=0 ) { - char *ufile = g_filename_to_utf8(fileList->data, - -1, NULL, NULL, NULL); + char *ufile = g_filename_display_name(fileList->data); ufraw_message(UFRAW_ERROR, _("Error deleting '%s'"), ufile); g_free(ufile); } else if (strcmp(fileList->data, uf->filename)==0 ) { Index: dcraw_indi.c =================================================================== RCS file: /cvsroot/ufraw/ufraw/dcraw_indi.c,v retrieving revision 1.54 retrieving revision 1.55 diff -u -d -r1.54 -r1.55 --- dcraw_indi.c 23 May 2008 21:32:32 -0000 1.54 +++ dcraw_indi.c 31 May 2008 19:31:12 -0000 1.55 @@ -189,7 +189,7 @@ const int use_auto_wb, const int use_camera_wb, const float cam_mul[4], const int iheight, const int iwidth, const int colors, float pre_mul[4], const unsigned filters, /*const*/ ushort white[8][8], - const char *ifname, void *dcraw) + const char *ifname_display, void *dcraw) { int dblack, row, col, x, y, c, val, sum[8]; double dsum[8], dmin, dmax; @@ -233,7 +233,7 @@ memcpy (pre_mul, cam_mul, 4*sizeof(float)); else dcraw_message (dcraw, DCRAW_NO_CAMERA_WB, - _("%s: Cannot use camera white balance.\n"), ifname); + _("%s: Cannot use camera white balance.\n"), ifname_display); } // if (user_mul[0]) // memcpy (pre_mul, user_mul, sizeof pre_mul); Index: dcraw.cc =================================================================== RCS file: /cvsroot/ufraw/ufraw/dcraw.cc,v retrieving revision 1.128 retrieving revision 1.129 diff -u -d -r1.128 -r1.129 --- dcraw.cc 8 May 2008 03:45:21 -0000 1.128 +++ dcraw.cc 31 May 2008 19:31:12 -0000 1.129 @@ -129,6 +129,14 @@ tone_curve_size = 0, tone_curve_offset = 0; /* Nikon Tone Curves UF*/ messageBuffer = NULL; lastStatus = DCRAW_SUCCESS; +ifname = NULL; +ifname_display = NULL; +} + +CLASS ~DCRaw() +{ +free(ifname); +free(ifname_display); } #define FORC(cnt) for (c=0; c < cnt; c++) @@ -246,14 +254,14 @@ void CLASS merror (void *ptr, const char *where) { if (ptr) return; - dcraw_message (DCRAW_ERROR,_("%s: Out of memory in %s\n"), ifname, where); /*UF*/ + dcraw_message (DCRAW_ERROR,_("%s: Out of memory in %s\n"), ifname_display, where); /*UF*/ longjmp (failure, 1); } void CLASS derror() { if (!data_error) { - dcraw_message (DCRAW_WARNING, "%s: ", ifname); + dcraw_message (DCRAW_WARNING, "%s: ", ifname_display); if (feof(ifp)) dcraw_message (DCRAW_WARNING,_("Unexpected end of file\n")); else @@ -615,7 +623,7 @@ if (level==0) leaf=0; cur = free_decode++; if (free_decode > first_decode+2048) { - dcraw_message (DCRAW_ERROR,_("%s: decoder table overflow\n"), ifname); /*UF*/ + dcraw_message (DCRAW_ERROR,_("%s: decoder table overflow\n"), ifname_display); /*UF*/ longjmp (failure, 2); } for (i=next=0; i <= leaf && next < 16; ) @@ -2254,7 +2262,7 @@ if ((cinfo.output_width != width ) || (cinfo.output_height*2 != height ) || (cinfo.output_components != 3 )) { - dcraw_message (DCRAW_ERROR,_("%s: incorrect JPEG dimensions\n"), ifname); /*UF*/ + dcraw_message (DCRAW_ERROR,_("%s: incorrect JPEG dimensions\n"), ifname_display); /*UF*/ jpeg_destroy_decompress (&cinfo); longjmp (failure, 3); } @@ -2749,7 +2757,7 @@ } cur = free_decode++; if (free_decode > first_decode+2048) { - dcraw_message (DCRAW_ERROR,_("%s: decoder table overflow\n"), ifname); /*UF*/ + dcraw_message (DCRAW_ERROR,_("%s: decoder table overflow\n"), ifname_display); /*UF*/ longjmp (failure, 2); } if (code) @@ -2911,7 +2919,7 @@ mat[i] = sget4(dp + i*2) & 0xffff; return mat; } - dcraw_message (DCRAW_ERROR,_("%s: \"%s\" matrix not found!\n"), ifname, name); /*UF*/ + dcraw_message (DCRAW_ERROR,_("%s: \"%s\" matrix not found!\n"), ifname_display, name); /*UF*/ return 0; } @@ -3023,7 +3031,7 @@ } if (!(cp = foveon_camf_param ("WhiteBalanceIlluminants", model2))) - { dcraw_message (DCRAW_ERROR,_("%s: Invalid white balance \"%s\"\n"), ifname, model2); /*UF*/ + { dcraw_message (DCRAW_ERROR,_("%s: Invalid white balance \"%s\"\n"), ifname_display, model2); /*UF*/ return; } foveon_fixed (cam_xyz, 9, cp); foveon_fixed (correct, 9, @@ -3761,7 +3769,7 @@ memcpy (pre_mul, cam_mul, sizeof pre_mul); else dcraw_message (DCRAW_NO_CAMERA_WB, - _("%s: Cannot use camera white balance.\n"), ifname); /*UF*/ + _("%s: Cannot use camera white balance.\n"), ifname_display); /*UF*/ } if (pre_mul[3] == 0) pre_mul[3] = colors < 4 ? pre_mul[1] : 1; dark = black; @@ -7654,7 +7662,7 @@ #ifndef HAVE_LIBJPEG if (load_raw == &CLASS kodak_jpeg_load_raw) { dcraw_message (DCRAW_ERROR,_("%s: You must link dcraw with libjpeg!!\n"), - ifname); /*UF*/ + ifname_display); /*UF*/ is_raw = 0; } #endif @@ -7694,7 +7702,7 @@ hInProfile = cmsOpenProfileFromMem (prof, profile_length); free (prof); } else - dcraw_message (DCRAW_ERROR,_("%s has no embedded profile.\n"), ifname); /*UF*/ + dcraw_message (DCRAW_ERROR,_("%s has no embedded profile.\n"), ifname_display); /*UF*/ if (!hInProfile) return; if (!output) hOutProfile = cmsCreate_sRGBProfile(); @@ -8284,6 +8292,7 @@ goto cleanup; } ifname = const_cast<char*>(argv[arg]); + ifname_display = ifname; if (!(ifp = fopen (ifname, "rb"))) { perror (ifname); continue; @@ -8495,6 +8504,9 @@ else shot_select = 0; } } + /* Make sure ifname are not free()'d (UF) */ + ifname = NULL; + ifname_display = NULL; return status; } Index: ufraw_routines.c =================================================================== RCS file: /cvsroot/ufraw/ufraw/ufraw_routines.c,v retrieving revision 1.91 retrieving revision 1.92 diff -u -d -r1.91 -r1.92 --- ufraw_routines.c 23 May 2008 21:32:32 -0000 1.91 +++ ufraw_routines.c 31 May 2008 19:31:12 -0000 1.92 @@ -433,8 +433,7 @@ } char *base = g_path_get_basename(filename); char *name = uf_file_set_type(base, ""); - char *utf8 = g_filename_to_utf8(name, -1, NULL, NULL, NULL); - if (utf8==NULL) utf8 = g_strdup("Unknown file name"); + char *utf8 = g_filename_display_name(name); g_strlcpy(cp->name, utf8, max_name); g_free(utf8); g_free(name); @@ -480,8 +479,7 @@ fprintf(out, "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"); char *base = g_path_get_basename(filename); char *name = uf_file_set_type(base, ""); - char *utf8 = g_filename_to_utf8(name, -1, NULL, NULL, NULL); - if (utf8==NULL) utf8 = strdup("Unknown file name"); + char *utf8 = g_filename_display_name(name); fprintf(out, "<Curve Version='%d'>%s\n", conf_default.version, utf8); g_free(utf8); g_free(name); Index: ufraw_preview.c =================================================================== RCS file: /cvsroot/ufraw/ufraw/ufraw_preview.c,v retrieving revision 1.205 retrieving revision 1.206 diff -u -d -r1.205 -r1.206 --- ufraw_preview.c 26 May 2008 22:32:13 -0000 1.205 +++ ufraw_preview.c 31 May 2008 19:31:12 -0000 1.206 @@ -371,8 +371,7 @@ } char *base = g_path_get_basename(filename); char *name = uf_file_set_type(base, ""); - char *utf8 = g_filename_to_utf8(name, -1, NULL, NULL, NULL); - if (utf8==NULL) utf8 = g_strdup("Unknown file name"); + char *utf8 = g_filename_display_name(name); g_strlcpy(p.name, utf8, max_name); g_free(utf8); g_free(name); @@ -2609,8 +2608,7 @@ static void set_save_tooltip(preview_data *data) { char *absFilename = uf_file_set_absolute(CFG->outputFilename); - char *utf8 = g_filename_to_utf8(absFilename, -1, NULL, NULL, NULL); - if (utf8==NULL) utf8 = g_strdup("Unknown file name"); + char *utf8 = g_filename_display_name(absFilename); char *text = g_strdup_printf(_("Filename: %s%s"), utf8, CFG->createID==also_id ? _("\nCreate also ID file") : CFG->createID==only_id ? _("\nCreate only ID file") : ""); @@ -2932,8 +2930,7 @@ buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text)); char *log = ufraw_message(UFRAW_GET_LOG, NULL); if (log!=NULL) { - char *utf8_log = g_filename_to_utf8(log, -1, NULL, NULL, NULL); - if (utf8_log==NULL) utf8_log = g_strdup(_("Encoding conversion failed")); + char *utf8_log = g_filename_display_name(log); gtk_text_buffer_set_text(buffer, utf8_log, -1); g_free(utf8_log); } @@ -3449,11 +3446,8 @@ } previewWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL); - char *utf8_filename = g_filename_to_utf8(uf->filename, - -1, NULL, NULL, NULL); - if (utf8_filename==NULL) utf8_filename = g_strdup("Unknown file name"); - char *previewHeader = g_strdup_printf(_("%s - UFRaw"), - utf8_filename); + char *utf8_filename = g_filename_display_name(uf->filename); + char *previewHeader = g_strdup_printf(_("%s - UFRaw"), utf8_filename); gtk_window_set_title(GTK_WINDOW(previewWindow), previewHeader); g_free(previewHeader); g_free(utf8_filename); Index: ufraw_conf.c =================================================================== RCS file: /cvsroot/ufraw/ufraw/ufraw_conf.c,v retrieving revision 1.107 retrieving revision 1.108 diff -u -d -r1.107 -r1.108 --- ufraw_conf.c 23 May 2008 21:32:32 -0000 1.107 +++ ufraw_conf.c 31 May 2008 19:31:12 -0000 1.108 @@ -449,8 +449,7 @@ if (c->profileCount[out_profile]<=0) { i = - c->profileCount[out_profile]; if (!strcmp("File", element)) { - char *utf8 = g_filename_from_utf8(temp, -1, NULL, NULL, NULL); - if (utf8==NULL) utf8 = g_strdup("Unknown file name"); + char *utf8 = g_filename_display_name(temp); g_strlcpy(c->profile[out_profile][i].file, utf8, max_path); g_free(utf8); } @@ -463,8 +462,7 @@ if (c->profileCount[display_profile]<=0) { i = - c->profileCount[display_profile]; if (!strcmp("File", element)) { - char *utf8 = g_filename_from_utf8(temp, -1, NULL, NULL, NULL); - if (utf8==NULL) utf8 = g_strdup("Unknown file name"); + char *utf8 = g_filename_display_name(temp); g_strlcpy(c->profile[display_profile][i].file, utf8, max_path); g_free(utf8); } @@ -785,21 +783,18 @@ buf = uf_markup_buf(buf, "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"); buf = uf_markup_buf(buf, "<UFRaw Version='%d'>\n", c->version); if (strlen(c->inputFilename)>0 && IDFilename!=NULL) { - char *utf8 = g_filename_to_utf8(c->inputFilename, -1, NULL, NULL, NULL); - if (utf8==NULL) utf8 = g_strdup("Unknown file name"); + char *utf8 = g_filename_display_name(c->inputFilename); buf = uf_markup_buf(buf, "<InputFilename>%s</InputFilename>\n", utf8); g_free(utf8); } if (strlen(c->outputFilename)>0 && IDFilename!=NULL) { - char *utf8=g_filename_to_utf8(c->outputFilename, -1, NULL, NULL, NULL); - if (utf8==NULL) utf8 = g_strdup("Unknown file name"); + char *utf8=g_filename_display_name(c->outputFilename); buf = uf_markup_buf(buf, "<OutputFilename>%s</OutputFilename>\n", utf8); g_free(utf8); } if (strlen(c->outputPath)>0) { - char *utf8=g_filename_to_utf8(c->outputPath, -1, NULL, NULL, NULL); - if (utf8!=NULL) - buf = uf_markup_buf(buf, "<OutputPath>%s</OutputPath>\n", utf8); + char *utf8=g_filename_display_name(c->outputPath); + buf = uf_markup_buf(buf, "<OutputPath>%s</OutputPath>\n", utf8); g_free(utf8); } else { /* Guess outputPath */ @@ -807,9 +802,8 @@ char *outPath = g_path_get_dirname(c->outputFilename); if ( strcmp(outPath,".") && strcmp(inPath, outPath) ) { g_strlcpy(c->outputPath, outPath, max_path); - char *utf8=g_filename_to_utf8(outPath, -1, NULL, NULL, NULL); - if (utf8!=NULL) - buf = uf_markup_buf(buf, "<OutputPath>%s</OutputPath>\n", utf8); + char *utf8=g_filename_display_name(outPath); + buf = uf_markup_buf(buf, "<OutputPath>%s</OutputPath>\n", utf8); g_free(utf8); } g_free(outPath); @@ -864,16 +858,13 @@ "<RemoteGimpCommand>%s</RemoteGimpCommand>\n", c->remoteGimpCommand); if (strlen(c->curvePath)>0) { - char *utf8 = g_filename_to_utf8(c->curvePath, -1, NULL, NULL, NULL); - if (utf8!=NULL) - buf = uf_markup_buf(buf, "<CurvePath>%s</CurvePath>\n", utf8); + char *utf8 = g_filename_display_name(c->curvePath); + buf = uf_markup_buf(buf, "<CurvePath>%s</CurvePath>\n", utf8); g_free(utf8); } if (strlen(c->profilePath)>0) { - char *utf8 = g_filename_to_utf8(c->profilePath, -1,NULL,NULL,NULL); - if (utf8!=NULL) - buf = uf_markup_buf(buf, - "<ProfilePath>%s</ProfilePath>\n", utf8); + char *utf8 = g_filename_display_name(c->profilePath); + buf = uf_markup_buf(buf, "<ProfilePath>%s</ProfilePath>\n", utf8); g_free(utf8); } } @@ -1078,9 +1069,7 @@ current = i==c->profileIndex[j]?"yes":"no"; buf = uf_markup_buf(buf, "<%s Current='%s'>%s\n", type, current, c->profile[j][i].name); - char *utf8 = g_filename_to_utf8(c->profile[j][i].file, - -1, NULL, NULL, NULL); - if (utf8==NULL) utf8 = g_strdup("Unknown file name"); + char *utf8 = g_filename_display_name(c->profile[j][i].file); buf = uf_markup_buf(buf, "\t<File>%s</File>\n", utf8); g_free(utf8); buf = uf_markup_buf(buf, "\t<ProductName>%s</ProductName>\n", @@ -1131,9 +1120,8 @@ buf = uf_markup_buf(buf, "<Rotation>%lf</Rotation>\n", c->rotationAngle); char *log = ufraw_message(UFRAW_GET_LOG, NULL); if (log!=NULL) { - char *utf8 = g_filename_to_utf8(log, -1, NULL, NULL, NULL); - if (utf8!=NULL) - buf = uf_markup_buf(buf, "<Log>\n%s</Log>\n", utf8); + char *utf8 = g_filename_display_name(log); + buf = uf_markup_buf(buf, "<Log>\n%s</Log>\n", utf8); g_free(utf8); } /* As long as darkframe is not in the GUI we save it only to ID files.*/ Index: dcraw.h =================================================================== RCS file: /cvsroot/ufraw/ufraw/dcraw.h,v retrieving revision 1.39 retrieving revision 1.40 diff -u -d -r1.39 -r1.40 --- dcraw.h 27 Mar 2008 04:00:32 -0000 1.39 +++ dcraw.h 31 May 2008 19:31:12 -0000 1.40 @@ -38,7 +38,7 @@ /* All dcraw's global variables are members of this class. */ FILE *ifp; short order; -char *ifname, *meta_data; +char *ifname, *ifname_display, *meta_data; char cdesc[5], desc[512], make[64], model[64], model2[64], artist[64]; float flash_used, canon_ev, iso_speed, shutter, aperture, focal_len; time_t timestamp; @@ -91,6 +91,7 @@ /* Initialization of the variables is done here */ DCRaw(); +~DCRaw(); void dcraw_message(int code, const char *format, ...); /* All dcraw functions with the CLASS prefix are members of this class. */ int fc (int row, int col); Index: dcraw_api.cc =================================================================== RCS file: /cvsroot/ufraw/ufraw/dcraw_api.cc,v retrieving revision 1.42 retrieving revision 1.43 diff -u -d -r1.42 -r1.43 --- dcraw_api.cc 23 May 2008 21:32:32 -0000 1.42 +++ dcraw_api.cc 31 May 2008 19:31:12 -0000 1.43 @@ -41,8 +41,8 @@ void scale_colors_INDI(gushort (*image)[4], const int maximum, const int black, const int use_auto_wb, const int use_camera_wb, const float cam_mul[4], const int iheight, const int iwidth, const int colors, float pre_mul[4], - const unsigned filters, /*const*/ gushort white[8][8], const char *ifname, - void *dcraw); + const unsigned filters, /*const*/ gushort white[8][8], + const char *ifname_display, void *dcraw); void lin_interpolate_INDI(gushort (*image)[4], const unsigned filters, const int width, const int height, const int colors, void *dcraw); void vng_interpolate_INDI(gushort (*image)[4], const unsigned filters, @@ -69,6 +69,7 @@ d->lastStatus = DCRAW_SUCCESS; d->verbose = 1; d->ifname = g_strdup(filename); + d->ifname_display = g_filename_display_name(d->ifname); if (setjmp(d->failure)) { d->dcraw_message(DCRAW_ERROR,_("Fatal internal error\n")); h->message = d->messageBuffer; @@ -76,9 +77,10 @@ return DCRAW_ERROR; } if (!(d->ifp = g_fopen (d->ifname, "rb"))) { + gchar *err_u8 = g_locale_to_utf8(strerror(errno), -1, NULL, NULL, NULL); d->dcraw_message(DCRAW_OPEN_ERROR,_("Cannot open file %s: %s\n"), - filename, strerror(errno)); - g_free(d->ifname); + d->ifname_display, err_u8); + g_free(err_u8); h->message = d->messageBuffer; delete d; return DCRAW_OPEN_ERROR; @@ -88,9 +90,8 @@ * to 'dcraw -i' succeeding */ if (!d->make[0]) { d->dcraw_message(DCRAW_OPEN_ERROR,_("%s: unsupported file format.\n"), - d->ifname); + d->ifname_display); fclose(d->ifp); - g_free(d->ifname); h->message = d->messageBuffer; int lastStatus = d->lastStatus; delete d; @@ -98,9 +99,9 @@ } /* Next we check if dcraw can decode the file */ if (!d->is_raw) { - d->dcraw_message(DCRAW_OPEN_ERROR,_("Cannot decode file %s\n"), d->ifname); + d->dcraw_message(DCRAW_OPEN_ERROR,_("Cannot decode file %s\n"), + d->ifname_display); fclose(d->ifp); - g_free(d->ifname); h->message = d->messageBuffer; int lastStatus = d->lastStatus; delete d; @@ -203,7 +204,7 @@ h->raw.colors = d->colors; h->fourColorFilters = d->filters; d->dcraw_message(DCRAW_VERBOSE,_("Loading %s %s image from %s ...\n"), - d->make, d->model, d->ifname); + d->make, d->model, d->ifname_display); fseek (d->ifp, d->data_offset, SEEK_SET); (d->*d->load_raw)(); d->bad_pixels(NULL); @@ -247,10 +248,12 @@ h->thumbOffset = d->thumb_offset; h->thumbBufferLength = d->thumb_length; if (d->thumb_offset==0) { - dcraw_message(d, DCRAW_ERROR,_("%s has no thumbnail."), d->ifname); + dcraw_message(d, DCRAW_ERROR,_("%s has no thumbnail."), + d->ifname_display); } else if (d->thumb_load_raw!=NULL) { dcraw_message(d, DCRAW_ERROR, - _("Unsupported thumb format (load_raw) for %s"), d->ifname); + _("Unsupported thumb format (load_raw) for %s"), + d->ifname_display); } else if (d->write_thumb==&DCRaw::jpeg_thumb) { h->thumbType = jpeg_thumb_type; } else if (d->write_thumb==&DCRaw::ppm_thumb) { @@ -259,7 +262,7 @@ h->thumbBufferLength = thumb->width*thumb->height*3; } else { dcraw_message(d, DCRAW_ERROR, - _("Unsupported thumb format for %s"), d->ifname); + _("Unsupported thumb format for %s"), d->ifname_display); } h->message = d->messageBuffer; return d->lastStatus; @@ -482,7 +485,7 @@ scale_colors_INDI(h->raw.image, h->rgbMax-h->black, h->black, useAutoWB, useCameraWB, h->cam_mul, h->raw.height, h->raw.width, h->raw.colors, - h->post_mul, h->filters, d->white, d->ifname, d); + h->post_mul, h->filters, d->white, d->ifname_display, d); h->message = d->messageBuffer; return d->lastStatus; } @@ -597,7 +600,6 @@ void dcraw_close(dcraw_data *h) { DCRaw *d = (DCRaw *)h->dcraw; - g_free(d->ifname); g_free(h->raw.image); delete d; } |