Without this commit, the following procedure always yielded Glib/GTK+
warnings or criticals for me:
1. Invoke PSPPIRE with a .sav file specified on the command line.
2. Choose Utilities|Variables...
3. Select a variable in the dialog box, then click on Cancel.
3. Close the output window using the window manager.
4. Close the data window using the window manager.
This commit fixes the problem.
/* PSPPIRE - a graphical user interface for PSPP.
- Copyright (C) 2006, 2008, 2009, 2010, 2011, 2012 Free Software Foundation
+ Copyright (C) 2006, 2008, 2009, 2010, 2011, 2012, 2013 Free Software Foundation
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
if (ds->dispose_has_run)
return;
+ psppire_data_store_set_dictionary (ds, NULL);
/* must chain up */
(* parent_class->dispose) (object);
if (dw->dict)
{
+ g_signal_handlers_disconnect_by_func (dw->dict,
+ G_CALLBACK (enable_save), dw);
+ g_signal_handlers_disconnect_by_func (dw->dict,
+ G_CALLBACK (on_weight_change), dw);
+ g_signal_handlers_disconnect_by_func (dw->dict,
+ G_CALLBACK (on_filter_change), dw);
+ g_signal_handlers_disconnect_by_func (dw->dict,
+ G_CALLBACK (on_split_change), dw);
+
g_object_unref (dw->dict);
dw->dict = NULL;
}