commit 8a6b07b19452eaeec1acac69da499fef6c1106bc
parent d2da356bdea282901f5f0d609f6b8c7c75bbf0c7
Author: Colin Leroy <colin@colino.net>
Date: Thu, 5 Jun 2014 16:58:01 +0200
Fix missing NULL checks
Diffstat:
1 file changed, 17 insertions(+), 14 deletions(-)
diff --git a/src/addressadd.c b/src/addressadd.c
@@ -472,20 +472,23 @@ gboolean addressadd_selection(const gchar *name, const gchar *address,
returned_name,
address,
returned_remarks);
- person->status = ADD_ENTRY;
-
- if (picture) {
- GError *error = NULL;
- gchar *name = g_strconcat( get_rc_dir(), G_DIR_SEPARATOR_S, ADDRBOOK_DIR, G_DIR_SEPARATOR_S,
- ADDRITEM_ID(person), ".png", NULL );
- gdk_pixbuf_save(picture, name, "png", &error, NULL);
- if (error) {
- g_warning(_("Failed to save image: \n%s"),
- error->message);
- g_error_free(error);
+
+ if (person != NULL) {
+ person->status = ADD_ENTRY;
+
+ if (picture) {
+ GError *error = NULL;
+ gchar *name = g_strconcat( get_rc_dir(), G_DIR_SEPARATOR_S, ADDRBOOK_DIR, G_DIR_SEPARATOR_S,
+ ADDRITEM_ID(person), ".png", NULL );
+ gdk_pixbuf_save(picture, name, "png", &error, NULL);
+ if (error) {
+ g_warning(_("Failed to save image: \n%s"),
+ error->message);
+ g_error_free(error);
+ }
+ addritem_person_set_picture( person, ADDRITEM_ID(person) ) ;
+ g_free( name );
}
- addritem_person_set_picture( person, ADDRITEM_ID(person) ) ;
- g_free( name );
}
#else
ContactData* contact = g_new0(ContactData, 1);
@@ -524,7 +527,7 @@ gboolean addressadd_selection(const gchar *name, const gchar *address,
contact_data_free(&contact);
#endif
#ifdef USE_LDAP
- if (fi->book->type == ADBOOKTYPE_LDAP) {
+ if (person != NULL && fi->book->type == ADBOOKTYPE_LDAP) {
LdapServer *server = (LdapServer *) fi->book;
ldapsvr_set_modified(server, TRUE);
ldapsvr_update_book(server, person);