So even though I have 3 dbd files in the location specified in configure with --with-dbi-dbd-dir=, my list is still null because gnucash hasn't asked for the registered backends yet? If so, why would Sebastian's example show a non-null list with a breakpoint at the same location?

Dave
On Apr 4, 2009, at 4:38 PM, Phil Longstaff wrote:

List being null isn't the problem.

"list" isn't used until after that point in the code (it asks qof for the list of registered backends and doesn't add combobox entries for "sqlite3", "mysql" or "pgsql" if there isn't a registered backend, and the libdbi backend doesn't register a backend if the dbd file isn't present).


________________________________
From: David Reiser <dbrei...@earthlink.net>
To: Phil Longstaff <plongst...@rogers.com>
Cc: Sebastian Held <sebastian.h...@gmx.de>; Gnucash list <gnucash-de...@lists.gnucash.org >
Sent: Saturday, April 4, 2009 4:18:49 PM
Subject: Re: Crash in dialog_file_access.c (was Re: Trouble compiling)



[...]________________________________

From: Sebastian Held <sebastian.h...@gmx.de>

To: Phil Longstaff <plongst...@rogers.com>

Cc: David Reiser <dbrei...@earthlink.net>; Derek Atkins <warl...@mit.edu >; Gnucash list <gnucash-de...@lists.gnucash.org>

Sent: Thursday, April 2, 2009 3:19:10 PM

Subject: Re: Trouble compiling


Same (rev18012) here on windows:


63A4A37E  libgobject-2.0-0.dll:63A4A37E  g_object_connect

64F0BAE3  libgncmod-gnome-utils.dll:64F0BAE3  gnc_ui_file_access

dialog-file-access.c:234

64F0BC72  libgncmod-gnome-utils.dll:64F0BC72

gnc_ui_file_access_for_save_as  dialog-file-access.c:275

6E36706F  libgnc-gnome-0.dll:6E36706F

gnc_main_window_cmd_file_save_as  gnc-plugin-basic-commands.c:393


(gdb) break dialog-file-access.c:234

...

(gdb) list 234

234             g_object_connect( G_OBJECT(faw->cb_uri_type),

"signal::changed", cb_uri_type_changed_cb, NULL );

(gdb) info local

faw = (FileAccessWindow *) 0x1e3a6c0

xml = (GladeXML *) 0x16aae00

box = (GtkWidget *) 0x65c41273

ds_node = (GList *) 0x1296850

op = (GtkButton *) 0x3eb4f60

align = (GtkWidget *) 0x3eafd68

fileChooser = (GtkFileChooserWidget *) 0x3ec4360

fileChooserAction = GTK_FILE_CHOOSER_ACTION_SAVE

list = (GList *) 0x1d5c7a0

node = (GList *) 0x22f318

uri_type_container = (GtkWidget *) 0x3e9f918

__PRETTY_FUNCTION__ = "gnc_ui_file_access"

(gdb) p *faw

$2 = {type = 1, dialog = 0x3ec7008, frame_file = 0x3eafd00,

frame_database = 0x3eafb60, fileChooser = 0x3ec4360,

cb_uri_type = 0x3ed7010, tf_host = 0x3eaa0c0, tf_database =

0x3eaa170,

tf_username = 0x3eaa220, tf_password = 0x3eaa2d0}

(gdb) p cb_uri_type_changed_cb

$3 = {void (GtkComboBox *)} 0x64f0b688 <cb_uri_type_changed_cb>


From gdb in my crash, I get:

Breakpoint 1, gnc_ui_file_access (type=1) at dialog-file-access.c:234
234g_object_connect( G_OBJECT(faw->cb_uri_type), "signal::changed", cb_uri_type_changed_cb, NULL );
(gdb) info local
faw = (FileAccessWindow *) 0x5077650
xml = (GladeXML *) 0x59d2c48
box = (GtkWidget *) 0x1b1f7d0
ds_node = (GList *) 0x1897e68
op = (GtkButton *) 0x5c09078
align = (GtkWidget *) 0x5c0a958
fileChooser = (GtkFileChooserWidget *) 0x29b4110
fileChooserAction = GTK_FILE_CHOOSER_ACTION_SAVE
list = (GList *) 0x0
node = (GList *) 0xbfffd800
uri_type_container = (GtkWidget *) 0x5c060d8
__PRETTY_FUNCTION__ = "gnc_ui_file_access"


list is NULL, so that's probably the cause of my crash. Any suggestions on changes I can try to work on the lack of "list"?

I have all three libdbi drivers installed, and configure reports that gnucash is configured for the dbi backend.
Dave

--
David Reiser
dbrei...@earthlink.net
_______________________________________________
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel

--
David Reiser
dbrei...@earthlink.net




_______________________________________________
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel

Reply via email to