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



commit 6781439fdc058754a0477dd1fc7b1d654fb90bf7
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.

 app/operations/gimpcurvesconfig.c |    9 ++++++++-
 app/operations/gimplevelsconfig.c |   13 ++++++++++++-
 2 files changed, 20 insertions(+), 2 deletions(-)
---
diff --git a/app/operations/gimpcurvesconfig.c b/app/operations/gimpcurvesconfig.c
index 0fa0983..b75177d 100644
--- a/app/operations/gimpcurvesconfig.c
+++ b/app/operations/gimpcurvesconfig.c
@@ -237,7 +237,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/operations/gimplevelsconfig.c b/app/operations/gimplevelsconfig.c
index 69b5e26..c545c24 100644
--- a/app/operations/gimplevelsconfig.c
+++ b/app/operations/gimplevelsconfig.c
@@ -255,7 +255,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]