From: Niels K. B. J. <nk...@us...> - 2008-07-28 17:20:43
|
Update of /cvsroot/ufraw/ufraw In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv31886 Modified Files: ufraw.c ufraw.h ufraw_chooser.c ufraw_conf.c ufraw_ufraw.c Log Message: Better fix for seg-fault in ufraw-batch. Index: ufraw.h =================================================================== RCS file: /cvsroot/ufraw/ufraw/ufraw.h,v retrieving revision 1.102 retrieving revision 1.103 diff -u -d -r1.102 -r1.103 --- ufraw.h 27 Jul 2008 03:30:35 -0000 1.102 +++ ufraw.h 28 Jul 2008 17:20:40 -0000 1.103 @@ -356,6 +356,8 @@ void conf_init (conf_data *c); /* Copy the image manipulation options from *src to *dst */ void conf_copy_image(conf_data *dst, const conf_data *src); +/* Copy the transformation options from *src to *dst */ +void conf_copy_transform(conf_data *dst, const conf_data *src); /* Copy the 'save options' from *src to *dst */ void conf_copy_save(conf_data *dst, const conf_data *src); int conf_set_cmd(conf_data *conf, const conf_data *cmd); Index: ufraw_conf.c =================================================================== RCS file: /cvsroot/ufraw/ufraw/ufraw_conf.c,v retrieving revision 1.117 retrieving revision 1.118 diff -u -d -r1.117 -r1.118 --- ufraw_conf.c 27 Jul 2008 03:30:35 -0000 1.117 +++ ufraw_conf.c 28 Jul 2008 17:20:40 -0000 1.118 @@ -1176,12 +1176,6 @@ * since on different make and model ChanMul are meaningless */ g_strlcpy(dst->make, src->make, max_name); g_strlcpy(dst->model, src->model, max_name); - dst->orientation = src->orientation; - dst->CropX1 = src->CropX1; - dst->CropY1 = src->CropY1; - dst->CropX2 = src->CropX2; - dst->CropY2 = src->CropY2; - dst->rotationAngle = src->rotationAngle; dst->threshold = src->threshold; dst->exposure = src->exposure; dst->contrast = src->contrast; @@ -1297,6 +1291,17 @@ #endif /* HAVE_LENSFUN */ } +/* Copy the transformation information from *src to *dst. */ +void conf_copy_transform(conf_data *dst, const conf_data *src) +{ + dst->orientation = src->orientation; + dst->CropX1 = src->CropX1; + dst->CropY1 = src->CropY1; + dst->CropX2 = src->CropX2; + dst->CropY2 = src->CropY2; + dst->rotationAngle = src->rotationAngle; +} + /* Copy the 'save options' from *src to *dst */ void conf_copy_save(conf_data *dst, const conf_data *src) { @@ -1314,6 +1319,8 @@ dst->shrink = src->shrink; dst->size = src->size; dst->overwrite = src->overwrite; + dst->RememberOutputPath = src->RememberOutputPath; + dst->progressiveJPEG = src->progressiveJPEG; dst->losslessCompress = src->losslessCompress; dst->embeddedImage = src->embeddedImage; } Index: ufraw_ufraw.c =================================================================== RCS file: /cvsroot/ufraw/ufraw/ufraw_ufraw.c,v retrieving revision 1.152 retrieving revision 1.153 diff -u -d -r1.152 -r1.153 --- ufraw_ufraw.c 27 Jul 2008 14:45:11 -0000 1.152 +++ ufraw_ufraw.c 28 Jul 2008 17:20:40 -0000 1.153 @@ -349,6 +349,7 @@ uf->LoadingID = TRUE; conf_data tmp = *rc; conf_copy_image(&tmp, uf->conf); + conf_copy_transform(&tmp, uf->conf); conf_copy_save(&tmp, uf->conf); g_strlcpy(tmp.outputFilename, uf->conf->outputFilename, max_path); g_strlcpy(tmp.outputPath, uf->conf->outputPath, max_path); @@ -383,12 +384,6 @@ struct stat s; fstat(fileno(raw->ifp), &s); g_snprintf(uf->conf->inputModTime, max_name, "%d", (int)s.st_mtime); - - /*Reset crop coordinates between images.*/ - uf->conf->CropX1 = -1; - uf->conf->CropY1 = -1; - uf->conf->CropX2 = -1; - uf->conf->CropY2 = -1; } if (strlen(uf->conf->outputFilename)==0) { /* If output filename wasn't specified use input filename */ Index: ufraw.c =================================================================== RCS file: /cvsroot/ufraw/ufraw/ufraw.c,v retrieving revision 1.48 retrieving revision 1.49 diff -u -d -r1.48 -r1.49 --- ufraw.c 30 Jun 2008 21:59:51 -0000 1.48 +++ ufraw.c 28 Jul 2008 17:20:40 -0000 1.49 @@ -140,10 +140,8 @@ exit(1); } ufraw_preview(uf, plugin, NULL); - rc = *uf->conf; - /* Reset crop and rotation settings between images. */ - rc.CropX1 = rc.CropY1 = rc.CropX2 = rc.CropY2 = -1; - rc.rotationAngle = 0; + conf_copy_image(&rc, uf->conf); + conf_copy_save(&rc, uf->conf); g_free(uf); } if (dummyWindow!=NULL) gtk_widget_destroy(dummyWindow); Index: ufraw_chooser.c =================================================================== RCS file: /cvsroot/ufraw/ufraw/ufraw_chooser.c,v retrieving revision 1.26 retrieving revision 1.27 diff -u -d -r1.26 -r1.27 --- ufraw_chooser.c 30 Jun 2008 21:59:51 -0000 1.26 +++ ufraw_chooser.c 28 Jul 2008 17:20:40 -0000 1.27 @@ -160,10 +160,8 @@ ufraw_config(uf, conf, NULL, NULL); ufraw_preview(uf, FALSE, NULL); g_free(filename); - *conf = *uf->conf; - /* Reset crop and rotation settings between images. */ - conf->CropX1 = conf->CropY1 = conf->CropX2 = conf->CropY2 = -1; - conf->rotationAngle = 0; + conf_copy_image(conf, uf->conf); + conf_copy_save(conf, uf->conf); } g_slist_free(saveList); } |