aboutsummaryrefslogtreecommitdiffstats
path: root/addressbook
diff options
context:
space:
mode:
Diffstat (limited to 'addressbook')
-rw-r--r--addressbook/ChangeLog7
-rw-r--r--addressbook/gui/widgets/e-addressbook-table-adapter.c9
2 files changed, 14 insertions, 2 deletions
diff --git a/addressbook/ChangeLog b/addressbook/ChangeLog
index e92c914a4f..77c4200b6c 100644
--- a/addressbook/ChangeLog
+++ b/addressbook/ChangeLog
@@ -1,3 +1,10 @@
+2001-07-05 Christopher James Lahey <clahey@ximian.com>
+
+ * gui/widgets/e-addressbook-table-adapter.c
+ (addressbook_is_cell_editable): Check if the row is within our
+ table and return from this function as if the card is a standard
+ card, not a list.
+
2001-07-03 Damon Chaplin <damon@ximian.com>
* backend/ebook/Makefile.am (evolution_vcard_importer_LDADD):
diff --git a/addressbook/gui/widgets/e-addressbook-table-adapter.c b/addressbook/gui/widgets/e-addressbook-table-adapter.c
index 36909ca433..3fa92d2300 100644
--- a/addressbook/gui/widgets/e-addressbook-table-adapter.c
+++ b/addressbook/gui/widgets/e-addressbook-table-adapter.c
@@ -159,11 +159,16 @@ addressbook_is_cell_editable (ETableModel *etc, int col, int row)
{
EAddressbookTableAdapter *adapter = E_ADDRESSBOOK_TABLE_ADAPTER(etc);
EAddressbookTableAdapterPrivate *priv = adapter->priv;
- ECard *card = e_addressbook_model_card_at (priv->model, row);
+ ECard *card;
+
+ if (row >= 0 && row < e_addressbook_model_card_count (priv->model))
+ card = e_addressbook_model_card_at (priv->model, row);
+ else
+ card = NULL;
if (!e_addressbook_model_editable(priv->model))
return FALSE;
- else if (e_card_evolution_list (card))
+ else if (card && e_card_evolution_list (card))
/* we only allow editing of the name and file as for
lists */
return col == E_CARD_SIMPLE_FIELD_FULL_NAME || col == E_CARD_SIMPLE_FIELD_FILE_AS;