projects
/
pspp-builds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Prevent var sheet from traversing to an invalid cell
[pspp-builds.git]
/
src
/
ui
/
gui
/
psppire-var-sheet.c
diff --git
a/src/ui/gui/psppire-var-sheet.c
b/src/ui/gui/psppire-var-sheet.c
index dfd62bb6737f1dbc78a605a6aaf62e2e7189a757..70e1044fcb25ed9d46dbc2fcc8d2232c3687fda6 100644
(file)
--- a/
src/ui/gui/psppire-var-sheet.c
+++ b/
src/ui/gui/psppire-var-sheet.c
@@
-251,6
+251,9
@@
traverse_cell_callback (PsppireSheet *sheet,
gint n_vars = psppire_var_store_get_var_cnt (var_store);
gint n_vars = psppire_var_store_get_var_cnt (var_store);
+ if (new_cell->col >= PSPPIRE_VAR_STORE_n_COLS)
+ return TRUE;
+
if (new_cell->row >= n_vars && !var_sheet->may_create_vars)
return TRUE;
if (new_cell->row >= n_vars && !var_sheet->may_create_vars)
return TRUE;
@@
-260,10
+263,10
@@
traverse_cell_callback (PsppireSheet *sheet,
const gchar *name = gtk_entry_get_text (entry);
const gchar *name = gtk_entry_get_text (entry);
- if (! psppire_dict_check_name (var_store->dict, name, TRUE))
+ if (! psppire_dict_check_name (var_store->dict
ionary
, name, TRUE))
return TRUE;
return TRUE;
- psppire_dict_insert_variable (var_store->dict, existing_cell->row, name);
+ psppire_dict_insert_variable (var_store->dict
ionary
, existing_cell->row, name);
return FALSE;
}
return FALSE;
}
@@
-278,7
+281,7
@@
traverse_cell_callback (PsppireSheet *sheet,
{
gint i;
for ( i = n_vars ; i <= new_cell->row; ++i )
{
gint i;
for ( i = n_vars ; i <= new_cell->row; ++i )
- psppire_dict_insert_variable (var_store->dict, i, NULL);
+ psppire_dict_insert_variable (var_store->dict
ionary
, i, NULL);
}
return FALSE;
}
return FALSE;
@@
-384,7
+387,7
@@
var_sheet_change_active_cell (PsppireVarSheet *vs,
vs->missing_val_dialog->pv =
psppire_var_store_get_var (var_store, row);
vs->missing_val_dialog->pv =
psppire_var_store_get_var (var_store, row);
- vs->missing_val_dialog->dict = var_store->dict;
+ vs->missing_val_dialog->dict = var_store->dict
ionary
;
g_signal_connect_swapped (customEntry,
"clicked",
g_signal_connect_swapped (customEntry,
"clicked",