X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;ds=sidebyside;f=src%2Fui%2Fgui%2Fpsppire-spreadsheet-model.c;fp=src%2Fui%2Fgui%2Fpsppire-spreadsheet-model.c;h=bd186ca46d4f8ed57bd541467cdb8a5c3915a0b5;hb=86ccb0cd2f25f8a9ffbce6208e8726972cacb520;hp=d02c1c558c94bcc937ea16881849e95bac4a17f3;hpb=f5e337fe69d0ee75e26ffc4b2c571234e73fa6dd;p=pspp diff --git a/src/ui/gui/psppire-spreadsheet-model.c b/src/ui/gui/psppire-spreadsheet-model.c index d02c1c558c..bd186ca46d 100644 --- a/src/ui/gui/psppire-spreadsheet-model.c +++ b/src/ui/gui/psppire-spreadsheet-model.c @@ -106,6 +106,7 @@ psppire_spreadsheet_model_set_property (GObject * object, { case PROP_SPREADSHEET: spreadsheetModel->spreadsheet = g_value_get_pointer (value); + spreadsheet_ref (spreadsheetModel->spreadsheet); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); @@ -117,6 +118,14 @@ psppire_spreadsheet_model_set_property (GObject * object, static void psppire_spreadsheet_model_dispose (GObject * object) { + PsppireSpreadsheetModel *spreadsheetModel = PSPPIRE_SPREADSHEET_MODEL (object); + + if (!spreadsheetModel->dispose_has_run) + { + spreadsheet_unref (spreadsheetModel->spreadsheet); + + spreadsheetModel->dispose_has_run = TRUE; + } } static void