r15107 - gnucash/branches/gda-dev/src/backend/gda - 1) Fix date handling

Phil Longstaff plongstaff at cvs.gnucash.org
Fri Nov 10 17:16:57 EST 2006


Author: plongstaff
Date: 2006-11-10 17:16:57 -0500 (Fri, 10 Nov 2006)
New Revision: 15107
Trac: http://svn.gnucash.org/trac/changeset/15107

Modified:
   gnucash/branches/gda-dev/src/backend/gda/gnc-backend-gda.c
Log:
1) Fix date handling
2) Need to commit if object is dirty OR being deleted



Modified: gnucash/branches/gda-dev/src/backend/gda/gnc-backend-gda.c
===================================================================
--- gnucash/branches/gda-dev/src/backend/gda/gnc-backend-gda.c	2006-11-10 20:31:02 UTC (rev 15106)
+++ gnucash/branches/gda-dev/src/backend/gda/gnc-backend-gda.c	2006-11-10 22:16:57 UTC (rev 15107)
@@ -283,10 +283,14 @@
 			const col_cvt_t* table )
 {
 	const GValue* val;
+	GDate* date;
 	Timespec ts;
 
 	val = gda_data_model_get_value_at_col_name( pModel, table->col_name, row );
-	ts = gnc_iso8601_to_timespec_gmt( gda_value_stringify( val ) );
+	date = (GDate*)g_value_get_boxed( val );
+	ts = gnc_dmy2timespec( g_date_get_day( date ),
+							g_date_get_month( date ),
+							g_date_get_year( date ) );
 	(*setter)( pObject, &ts );
 }
 
@@ -996,7 +1000,7 @@
 
 	printf( "gda_commit_edit(): %s dirty = %d, do_free=%d\n", inst->entity.e_type, inst->dirty, inst->do_free );
 
-	if( !inst->dirty ) return;
+	if( !inst->dirty && !inst->do_free ) return;
 
 	be_data.ok = FALSE;
 	be_data.be = be;



More information about the gnucash-changes mailing list