r15960 - gnucash/branches/2.0 - Phil Longstaff's patch to fix a kvp_frame bug.

Derek Atkins warlord at cvs.gnucash.org
Sat Apr 21 15:18:30 EDT 2007


Author: warlord
Date: 2007-04-21 15:18:19 -0400 (Sat, 21 Apr 2007)
New Revision: 15960
Trac: http://svn.gnucash.org/trac/changeset/15960

Modified:
   gnucash/branches/2.0/
   gnucash/branches/2.0/ChangeLog
   gnucash/branches/2.0/lib/libqof/qof/kvp_frame.c
Log:
Phil Longstaff's patch to fix a kvp_frame bug.
Save the current frame so we know where to build the new one.

Audit by: hampton
Merge from r15853



Property changes on: gnucash/branches/2.0
___________________________________________________________________
Name: svk:merge
   - 3889ce50-311e-0410-a464-f059747ec5d1:/local/gnucash/branches/2.0:697
d2ab10a8-8a95-4986-baff-8d511d9f15b2:/local/gnucash/branches/2.0:14580
d2ab10a8-8a95-4986-baff-8d511d9f15b2:/local/gnucash/trunk:13282
   + 3889ce50-311e-0410-a464-f059747ec5d1:/local/gnucash/branches/2.0:697
d2ab10a8-8a95-4986-baff-8d511d9f15b2:/local/gnucash/branches/2.0:14581
d2ab10a8-8a95-4986-baff-8d511d9f15b2:/local/gnucash/trunk:13282

Modified: gnucash/branches/2.0/ChangeLog
===================================================================
--- gnucash/branches/2.0/ChangeLog	2007-04-21 19:18:16 UTC (rev 15959)
+++ gnucash/branches/2.0/ChangeLog	2007-04-21 19:18:19 UTC (rev 15960)
@@ -1,3 +1,8 @@
+2007-04-21  Derek Atkins  <derek at ihtfp.com>
+
+	* Phil Longstaff's patch to fix a kvp_frame bug.
+	  Save the current frame so we know where to build the new one.
+
 2007-04-21  David Hampton  <hampton at employees.org>
 
 	* Fix window corruption problems when adding prices to the price

Modified: gnucash/branches/2.0/lib/libqof/qof/kvp_frame.c
===================================================================
--- gnucash/branches/2.0/lib/libqof/qof/kvp_frame.c	2007-04-21 19:18:16 UTC (rev 15959)
+++ gnucash/branches/2.0/lib/libqof/qof/kvp_frame.c	2007-04-21 19:18:19 UTC (rev 15960)
@@ -512,6 +512,7 @@
 {
   char *key = NULL;
   KvpValue *oldvalue;
+  KvpFrame* orig_frame = frame;
 
   frame = (KvpFrame *) get_trailer_or_null (frame, path, &key);
   oldvalue = kvp_frame_get_slot (frame, key);
@@ -544,6 +545,7 @@
 
   /* Hmm, if we are here, the path doesn't exist. We need to 
    * create the path, add the value to it. */
+  frame = orig_frame;
   frame = kvp_frame_set_value_nc (frame, path, value);
   LEAVE ("new frame=%s", kvp_frame_to_string(frame));
   return frame;



More information about the gnucash-changes mailing list