diff options
author | Christopher James Lahey <clahey@ximian.com> | 2001-06-09 14:31:55 +0800 |
---|---|---|
committer | Chris Lahey <clahey@src.gnome.org> | 2001-06-09 14:31:55 +0800 |
commit | 5c58686c8ef72be5ed8a2d4469b3556f80d4b81c (patch) | |
tree | 0f708cfe4db04dad2e15a4bb44aa58772aaf3b21 /addressbook/backend/ebook/e-card-simple.c | |
parent | 7343d66ba7149b389b86508d188bab9c4bfe28dc (diff) | |
download | gsoc2013-evolution-5c58686c8ef72be5ed8a2d4469b3556f80d4b81c.tar gsoc2013-evolution-5c58686c8ef72be5ed8a2d4469b3556f80d4b81c.tar.gz gsoc2013-evolution-5c58686c8ef72be5ed8a2d4469b3556f80d4b81c.tar.bz2 gsoc2013-evolution-5c58686c8ef72be5ed8a2d4469b3556f80d4b81c.tar.lz gsoc2013-evolution-5c58686c8ef72be5ed8a2d4469b3556f80d4b81c.tar.xz gsoc2013-evolution-5c58686c8ef72be5ed8a2d4469b3556f80d4b81c.tar.zst gsoc2013-evolution-5c58686c8ef72be5ed8a2d4469b3556f80d4b81c.zip |
Null terminate the strv here. (e_card_locate_match): ref here instead of
2001-06-09 Christopher James Lahey <clahey@ximian.com>
* backend/ebook/e-card-compare.c (use_common_book_cb): Null
terminate the strv here.
(e_card_locate_match): ref here instead of unref.
* backend/ebook/e-card-simple.c (e_card_simple_get): Handle a NULL
card here.
* contact-editor/Makefile.am (INCLUDES), gui/widgets/Makefile.am
(INCLUDES): Added addressbook/gui/merging here.
* contact-editor/e-contact-quick-add.c (book_ready_cb),
gui/component/addressbook-component.c (dnd_drop_book_open_cb),
gui/widgets/e-addressbook-table-adapter.c
(addressbook_append_row), gui/widgets/e-addressbook-util.c
(add_card_cb), gui/widgets/e-addressbook-view.c
(selection_received), gui/widgets/e-minicard-control.c
(book_open_cb): Use e_card_merging_book_add_card instead of
e_book_add_card here.
* gui/Makefile.am (SUBDIRS): Added merging.
* gui/component/Makefile.am (evolution_addressbook_LDADD),
gui/widgets/Makefile.am (minicard_test_LDADD,
minicard_widget_test_LDADD): Added libecardmerging.a here.
* gui/merging/, gui/merging/.cvsignore, gui/merging/Makefile.am:
New addressbook library.
* gui/merging/e-card-duplicate-detected.glade: Glade file for
duplicate detected dialog.
* gui/merging/e-card-merging.c, gui/merging/e-card-merging.h: New
files for detecting duplicates before adding and putting up a
dialog if duplicates are found.
* gui/widgets/e-minicard-view.c: Include e-addressbook-util.h
here.
svn path=/trunk/; revision=10170
Diffstat (limited to 'addressbook/backend/ebook/e-card-simple.c')
-rw-r--r-- | addressbook/backend/ebook/e-card-simple.c | 60 |
1 files changed, 36 insertions, 24 deletions
diff --git a/addressbook/backend/ebook/e-card-simple.c b/addressbook/backend/ebook/e-card-simple.c index f7550017a0..ed10a56685 100644 --- a/addressbook/backend/ebook/e-card-simple.c +++ b/addressbook/backend/ebook/e-card-simple.c @@ -727,15 +727,21 @@ char *e_card_simple_get (ECardSimple *simple, ECardName *name; switch(type) { case E_CARD_SIMPLE_INTERNAL_TYPE_STRING: - gtk_object_get(GTK_OBJECT(simple->card), - field_data[field].ecard_field, &string, - NULL); - return g_strdup(string); + if (simple->card) { + gtk_object_get(GTK_OBJECT(simple->card), + field_data[field].ecard_field, &string, + NULL); + return g_strdup(string); + } else + return NULL; case E_CARD_SIMPLE_INTERNAL_TYPE_DATE: - gtk_object_get(GTK_OBJECT(simple->card), - field_data[field].ecard_field, &date, - NULL); - return NULL; /* FIXME!!!! */ + if (simple->card) { + gtk_object_get(GTK_OBJECT(simple->card), + field_data[field].ecard_field, &date, + NULL); + return NULL; /* FIXME!!!! */ + } else + return NULL; case E_CARD_SIMPLE_INTERNAL_TYPE_ADDRESS: addr = e_card_simple_get_address(simple, field_data[field].list_type_index); @@ -757,24 +763,30 @@ char *e_card_simple_get (ECardSimple *simple, case E_CARD_SIMPLE_INTERNAL_TYPE_SPECIAL: switch (field) { case E_CARD_SIMPLE_FIELD_NAME_OR_ORG: - gtk_object_get(GTK_OBJECT(simple->card), - "full_name", &string, - NULL); - if (string && *string) + if (simple->card) { + gtk_object_get(GTK_OBJECT(simple->card), + "full_name", &string, + NULL); + if (string && *string) + return g_strdup(string); + gtk_object_get(GTK_OBJECT(simple->card), + "org", &string, + NULL); + if (string && *string) + return g_strdup(string); + string = e_card_simple_get_email(simple, + E_CARD_SIMPLE_EMAIL_ID_EMAIL); return g_strdup(string); - gtk_object_get(GTK_OBJECT(simple->card), - "org", &string, - NULL); - if (string && *string) - return g_strdup(string); - string = e_card_simple_get_email(simple, - E_CARD_SIMPLE_EMAIL_ID_EMAIL); - return g_strdup(string); + } else + return NULL; case E_CARD_SIMPLE_FIELD_FAMILY_NAME: - gtk_object_get (GTK_OBJECT(simple->card), - "name", &name, - NULL); - return g_strdup (name->family); + if (simple->card) { + gtk_object_get (GTK_OBJECT(simple->card), + "name", &name, + NULL); + return g_strdup (name->family); + } else + return NULL; default: return NULL; } |