Rob Browning wrote:
> 
> Grant Likely <[EMAIL PROTECTED]> writes:
> 
> > Now I'm in over my head.  I know much more about gnome/gtk than I do
> > about the scheme bindings.  I have only taken a quick glance through
> > the gnc_shutdown() code, and I made some assumptions I shouldn't
> > have.  I just assumed that gnucash would be setup like all other gtk
> > applications.
> 
> So what's the "normal" setup?  I'm much more knowledgable about guile
> than gtk, though I'm reasonably conversant in the former.

Exactly what Dave had said.  gtk_main_quit() just sets a flag which
causes the gtk main loop to exit AFTER control has been returned to it. 
ie. gtk_main_quit() returns immediatly after being called, and then
control must be returned to the event loop before the program will exit.

I think it is a problem to pop out of the program after gtk_main_quit()
returns.  Firstly because any cleanup code that somebody puts at the end
of main() after gtk_main() will never get executed on a quit, and
secondly if we ever start doing fancy stuff like making gnucash a Bonobo
component then other apps may depend on gtk being cleaned up properly on
exit.  At the moment it probably doesn't matter too much becase the OS
should clean up after us (Bigtime hack though).

I'm just heading off to work, so I haven't explored this on my own; At
any point does gnc_shutdown call exit(), or do we at any time after
cleaning up gnc do we return to the callback routine?  If we do the
later, then there is no problem.
> 
> (It's nice to see we may be getting people more knowledgable with the
> GUI.  We were getting some momentum in that department pre-SD (Server
> Death).  I hope it continues.)
> 

later,
G.

--
Gnucash Developer's List 
To unsubscribe send empty email to: [EMAIL PROTECTED]

Reply via email to