From 6d0d055e9336d05a3efca53d551eb905bd956e72 Mon Sep 17 00:00:00 2001 From: John Darrington Date: Sun, 22 Sep 2013 10:46:52 +0200 Subject: [PATCH] Added some gtk-criticals when the datasheet is null. In a single threaded, non-concurrent system, this should never happen. --- src/ui/gui/psppire-data-sheet.c | 5 +++-- src/ui/gui/psppire-data-store.c | 2 ++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/ui/gui/psppire-data-sheet.c b/src/ui/gui/psppire-data-sheet.c index 55b8d884d4..badc204165 100644 --- a/src/ui/gui/psppire-data-sheet.c +++ b/src/ui/gui/psppire-data-sheet.c @@ -124,6 +124,7 @@ on_query_tooltip (GtkWidget *widget, gint wx, gint wy, int width; g_return_val_if_fail (data_store != NULL, FALSE); + g_return_val_if_fail (data_store->datasheet != NULL, FALSE); if (!get_tooltip_location (widget, tooltip, wx, wy, &row, &column)) return FALSE; @@ -176,9 +177,9 @@ render_row_number_cell (PsppSheetViewColumn *tree_column, { PsppireDataStore *store = store_; GValue gvalue = { 0, }; - gint row; + gint row = GPOINTER_TO_INT (iter->user_data); - row = GPOINTER_TO_INT (iter->user_data); + g_return_if_fail (store->datasheet); g_value_init (&gvalue, G_TYPE_INT); g_value_set_int (&gvalue, row + 1); diff --git a/src/ui/gui/psppire-data-store.c b/src/ui/gui/psppire-data-store.c index fbeb737cf3..7323985119 100644 --- a/src/ui/gui/psppire-data-store.c +++ b/src/ui/gui/psppire-data-store.c @@ -205,6 +205,7 @@ delete_variable_callback (GObject *obj, const struct variable *var UNUSED, { PsppireDataStore *store = PSPPIRE_DATA_STORE (data); + g_return_if_fail (store->datasheet); datasheet_delete_columns (store->datasheet, case_index, 1); datasheet_insert_column (store->datasheet, NULL, -1, case_index); @@ -431,6 +432,7 @@ psppire_data_store_get_string (PsppireDataStore *store, int width; g_return_val_if_fail (store != NULL, NULL); + g_return_val_if_fail (store->datasheet != NULL, NULL); g_return_val_if_fail (var != NULL, NULL); if (row < 0 || row >= datasheet_get_n_rows (store->datasheet)) -- 2.30.2