gnucash master: Multiple changes pushed

Geert Janssens gjanssens at code.gnucash.org
Mon May 5 15:59:32 EDT 2014


Updated	 via  https://github.com/Gnucash/gnucash/commit/79d16808 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/cc411072 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/d702c92d (commit)
	 via  https://github.com/Gnucash/gnucash/commit/9e5d6132 (commit)
	from  https://github.com/Gnucash/gnucash/commit/cd79b1f5 (commit)



commit 79d168080d3c25b7887d41744a1b5d90c9274633
Merge: cd79b1f cc41107
Author: Geert Janssens <janssens-geert at telenet.be>
Date:   Mon May 5 21:57:44 2014 +0200

    Merge branch 'maint'
    
    * Proper fix for libdbi crash
    * Saved report configuration dialog resize issues


commit cc4110726976bea0f81da4c79e2d4b258182c139
Author: Colin <colin at clanlaw.org.uk>
Date:   Mon May 5 13:34:32 2014 +0100

    Fix crash initialising dbi if libdbi version >= 0.9.0

diff --git a/src/backend/dbi/gnc-backend-dbi.c b/src/backend/dbi/gnc-backend-dbi.c
index 694cbba..fcfce0c 100644
--- a/src/backend/dbi/gnc-backend-dbi.c
+++ b/src/backend/dbi/gnc-backend-dbi.c
@@ -1869,7 +1869,7 @@ gnc_module_init_backend_dbi(void)
 
     /* dbi_initialize returns -1 in case of errors */
     #if HAVE_LIBDBI_R
-    num_drivers = dbi_initialize_r( driver_dir, dbi_instance );
+    num_drivers = dbi_initialize_r( driver_dir, &dbi_instance );
     #else
     num_drivers = dbi_initialize( driver_dir );
     #endif

commit d702c92d63d1417222a6e50041bc27f1c25c1fa1
Author: Geert Janssens <janssens-geert at telenet.be>
Date:   Mon May 5 21:55:24 2014 +0200

    Revert "Fix crash with libdib >= 0.9.0"
    
    This reverts commit 6695f6c6608869a2d4d62e94f060bf77b618d60c.

diff --git a/src/backend/dbi/gnc-backend-dbi.c b/src/backend/dbi/gnc-backend-dbi.c
index e5e263a..694cbba 100644
--- a/src/backend/dbi/gnc-backend-dbi.c
+++ b/src/backend/dbi/gnc-backend-dbi.c
@@ -292,7 +292,7 @@ gnc_dbi_sqlite3_session_begin( QofBackend *qbe, QofSession *session,
     }
 
     #if HAVE_LIBDBI_R
-    be->conn = dbi_conn_new_r( "sqlite3", &dbi_instance );
+    be->conn = dbi_conn_new_r( "sqlite3", dbi_instance );
     #else
     be->conn = dbi_conn_new( "sqlite3" );
     #endif
@@ -822,7 +822,7 @@ gnc_dbi_mysql_session_begin( QofBackend* qbe, QofSession *session,
         dbi_conn_close( be->conn );
     }
 #if HAVE_LIBDBI_R
-    be->conn = dbi_conn_new_r( "mysql", &dbi_instance );
+    be->conn = dbi_conn_new_r( "mysql", dbi_instance );
 #else
     be->conn = dbi_conn_new( "mysql" );
 #endif
@@ -911,7 +911,7 @@ gnc_dbi_mysql_session_begin( QofBackend* qbe, QofSession *session,
 
             // Try again to connect to the db
             #if HAVE_LIBDBI_R
-            be->conn = dbi_conn_new_r( "mysql", &dbi_instance );
+            be->conn = dbi_conn_new_r( "mysql", dbi_instance );
             #else
             be->conn = dbi_conn_new( "mysql" );
             #endif
@@ -1168,7 +1168,7 @@ gnc_dbi_postgres_session_begin( QofBackend *qbe, QofSession *session,
     }
 
     #if HAVE_LIBDBI_R
-    be->conn = dbi_conn_new_r( "pgsql", &dbi_instance );
+    be->conn = dbi_conn_new_r( "pgsql", dbi_instance );
     #else
     be->conn = dbi_conn_new( "pgsql" );
     #endif
@@ -1259,7 +1259,7 @@ gnc_dbi_postgres_session_begin( QofBackend *qbe, QofSession *session,
 
             // Try again to connect to the db
             #if HAVE_LIBDBI_R
-            be->conn = dbi_conn_new_r( "pgsql", &dbi_instance );
+            be->conn = dbi_conn_new_r( "pgsql", dbi_instance );
             #else
             be->conn = dbi_conn_new( "pgsql" );
             #endif
@@ -1869,7 +1869,7 @@ gnc_module_init_backend_dbi(void)
 
     /* dbi_initialize returns -1 in case of errors */
     #if HAVE_LIBDBI_R
-    num_drivers = dbi_initialize_r( driver_dir, &dbi_instance );
+    num_drivers = dbi_initialize_r( driver_dir, dbi_instance );
     #else
     num_drivers = dbi_initialize( driver_dir );
     #endif
@@ -1885,7 +1885,7 @@ gnc_module_init_backend_dbi(void)
         do
         {
             #if HAVE_LIBDBI_R
-            driver = dbi_driver_list_r( driver, &dbi_instance );
+            driver = dbi_driver_list_r( driver, dbi_instance );
             #else
             driver = dbi_driver_list( driver );
             #endif
@@ -1988,7 +1988,7 @@ void
 gnc_module_finalize_backend_dbi( void )
 {
     #if HAVE_LIBDBI_R
-    dbi_shutdown_r(&dbi_instance);
+    dbi_shutdown_r(dbi_instance);
     #else
     dbi_shutdown();
     #endif

commit 9e5d61325768d346e3a092ae12fcfb045eae555e
Author: Geert Janssens <janssens-geert at telenet.be>
Date:   Mon May 5 20:46:02 2014 +0200

    Bug 729497 - Saved Report Configuration selection window resize

diff --git a/src/gnome/gschemas/org.gnucash.dialogs.gschema.xml.in.in b/src/gnome/gschemas/org.gnucash.dialogs.gschema.xml.in.in
index 6a71a44..7c318dd 100644
--- a/src/gnome/gschemas/org.gnucash.dialogs.gschema.xml.in.in
+++ b/src/gnome/gschemas/org.gnucash.dialogs.gschema.xml.in.in
@@ -12,6 +12,7 @@
     <child name="log-replay" schema="org.gnucash.dialogs.log-replay"/>
     <child name="open-save" schema="org.gnucash.dialogs.open-save"/>
     <child name="report" schema="org.gnucash.dialogs.report"/>
+    <child name="report-saved-configs" schema="org.gnucash.dialogs.report-saved-configs"/>
     <child name="lot-viewer" schema="org.gnucash.dialogs.lot-viewer"/>
     <child name="new-user" schema="org.gnucash.dialogs.new-user"/>
     <child name="new-hierarchy" schema="org.gnucash.dialogs.new-hierarchy"/>
@@ -141,6 +142,16 @@
     </key>
   </schema>
 
+  <schema id="org.gnucash.dialogs.report-saved-configs" path="/org/gnucash/dialogs/report-saved-configs/">
+    <key name="last-geometry" type="(iiii)">
+      <default>(-1,-1,-1,-1)</default>
+      <summary>Last window position and size</summary>
+      <description>This setting describes the size and position of the window when it was last closed.
+        The numbers are the X and Y coordinates of the top left corner of the window
+        followed by the width and height of the window.</description>
+    </key>
+  </schema>
+
   <schema id="org.gnucash.dialogs.lot-viewer" path="/org/gnucash/dialogs/lot-viewer/">
     <key name="hpane-position" type="i">
       <default>200</default>
diff --git a/src/report/report-gnome/dialog-custom-report.c b/src/report/report-gnome/dialog-custom-report.c
index ac01ee2..3e642ff 100644
--- a/src/report/report-gnome/dialog-custom-report.c
+++ b/src/report/report-gnome/dialog-custom-report.c
@@ -41,6 +41,7 @@
 #include "gnc-report.h"
 #include "gnc-plugin-page-report.h"
 
+#define GNC_PREFS_GROUP_REPORT_SAVED_CONFIGS "dialogs.report-saved-configs"
 
 /* convenience for accessing columns in the GtkListStore that holds
    the reports */
@@ -95,6 +96,8 @@ void
 custom_report_dialog_close_cb(GtkWidget* widget, gpointer data)
 {
     CustomReportDialog *crd = data;
+    gnc_save_window_size(GNC_PREFS_GROUP_REPORT_SAVED_CONFIGS, GTK_WINDOW(crd->dialog));
+
     gtk_widget_destroy(crd->dialog);
     g_free(crd);
 }
@@ -497,6 +500,8 @@ static CustomReportDialog *gnc_ui_custom_report_internal(GncMainWindow * window)
     set_reports_view_and_model(crd);
     crd->window = window;
 
+    gnc_restore_window_size (GNC_PREFS_GROUP_REPORT_SAVED_CONFIGS, GTK_WINDOW(crd->dialog));
+
     /* connect the signals */
     gtk_builder_connect_signals_full (builder, gnc_builder_connect_full_func, crd);
 
diff --git a/src/report/report-gnome/dialog-custom-report.glade b/src/report/report-gnome/dialog-custom-report.glade
index 4247a36..5f13edd 100644
--- a/src/report/report-gnome/dialog-custom-report.glade
+++ b/src/report/report-gnome/dialog-custom-report.glade
@@ -96,7 +96,7 @@ altering the report's options to your taste and then choosing "Save Report Confi
 the Reports menu or tool bar.</property>
           </object>
           <packing>
-            <property name="expand">True</property>
+            <property name="expand">False</property>
             <property name="fill">True</property>
             <property name="position">3</property>
           </packing>



Summary of changes:
 src/backend/dbi/gnc-backend-dbi.c                        | 14 +++++++-------
 src/gnome/gschemas/org.gnucash.dialogs.gschema.xml.in.in | 11 +++++++++++
 src/report/report-gnome/dialog-custom-report.c           |  5 +++++
 src/report/report-gnome/dialog-custom-report.glade       |  2 +-
 4 files changed, 24 insertions(+), 8 deletions(-)



More information about the gnucash-changes mailing list