[gimp/gimp-2-8] Bug 700653 - Duplicate "(time ...)" values in gimp-curves-tool.settings



commit 40726a341d00e4874b1ae24c842a7584a4a087ee
Author: Michael Natterer <mitch gimp org>
Date:   Sun May 19 21:42:50 2013 +0200

    Bug 700653 - Duplicate "(time ...)" values in gimp-curves-tool.settings
    
    and gimp-levels-tool.settings
    
    Serialize the channel properties manually (not using
    gimp_config_serialize_properties()), so the parent class' "time"
    property doesn't end up in the config file once per channel.
    (cherry picked from commit 6781439fdc058754a0477dd1fc7b1d654fb90bf7)

 app/gegl/gimpcurvesconfig.c |    9 ++++++++-
 app/gegl/gimplevelsconfig.c |   13 ++++++++++++-
 2 files changed, 20 insertions(+), 2 deletions(-)
---
diff --git a/app/gegl/gimpcurvesconfig.c b/app/gegl/gimpcurvesconfig.c
index 6bb96f9..e1373d7 100644
--- a/app/gegl/gimpcurvesconfig.c
+++ b/app/gegl/gimpcurvesconfig.c
@@ -240,7 +240,14 @@ gimp_curves_config_serialize (GimpConfig       *config,
     {
       c_config->channel = channel;
 
-      success = gimp_config_serialize_properties (config, writer);
+      /*  Serialize the channel properties manually (not using
+       *  gimp_config_serialize_properties()), so the parent class'
+       *  "time" property doesn't end up in the config file once per
+       *  channel. See bug #700653.
+       */
+      success =
+        (gimp_config_serialize_property_by_name (config, "channel", writer) &&
+         gimp_config_serialize_property_by_name (config, "curve",   writer));
 
       if (! success)
         break;
diff --git a/app/gegl/gimplevelsconfig.c b/app/gegl/gimplevelsconfig.c
index 0ae85f6..f605f2b 100644
--- a/app/gegl/gimplevelsconfig.c
+++ b/app/gegl/gimplevelsconfig.c
@@ -258,7 +258,18 @@ gimp_levels_config_serialize (GimpConfig       *config,
     {
       l_config->channel = channel;
 
-      success = gimp_config_serialize_properties (config, writer);
+      /*  serialize the channel properties manually (not using
+       *  gimp_config_serialize_properties()), so the parent class'
+       *  "time" property doesn't end up in the config file one per
+       *  channel. See bug #700653.
+       */
+      success =
+        (gimp_config_serialize_property_by_name (config, "channel",     writer) &&
+         gimp_config_serialize_property_by_name (config, "gamma",       writer) &&
+         gimp_config_serialize_property_by_name (config, "low-input",   writer) &&
+         gimp_config_serialize_property_by_name (config, "high-input",  writer) &&
+         gimp_config_serialize_property_by_name (config, "low-output",  writer) &&
+         gimp_config_serialize_property_by_name (config, "high-output", writer));
 
       if (! success)
         break;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]