[balsa/wip/gtk4: 182/351] address-book: set-status no longer takes ownership
- From: Peter Bloomfield <peterb src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [balsa/wip/gtk4: 182/351] address-book: set-status no longer takes ownership
- Date: Wed, 23 May 2018 21:32:15 +0000 (UTC)
commit 800b3046902f24404f86bb6edd461994b122f453
Author: Peter Bloomfield <PeterBloomfield bellsouth net>
Date: Sat Feb 17 18:47:13 2018 -0500
address-book: set-status no longer takes ownership
Change libbalsa_address_book_set_status() to take a const gchar *
argument and copy it, instead of taking ownership. That makes it
consistent with the other setters. All calls but one were actually using
g_strdup() to create a string whose ownership could be taken.
libbalsa/address-book-gpe.c | 14 +++++++-------
libbalsa/address-book-ldap.c | 19 +++++++------------
libbalsa/address-book-osmo.c | 6 +++++-
libbalsa/address-book.c | 6 +++---
libbalsa/address-book.h | 3 ++-
5 files changed, 24 insertions(+), 24 deletions(-)
---
diff --git a/libbalsa/address-book-gpe.c b/libbalsa/address-book-gpe.c
index a11abd2..15f6540 100644
--- a/libbalsa/address-book-gpe.c
+++ b/libbalsa/address-book-gpe.c
@@ -402,7 +402,7 @@ libbalsa_address_book_gpe_load(LibBalsaAddressBook * ab,
if(r != SQLITE_OK) {
printf("r=%d err=%s\n", r, err);
- libbalsa_address_book_set_status(ab, g_strdup(err));
+ libbalsa_address_book_set_status(ab, err);
#ifdef HAVE_SQLITE3
sqlite3_free(err);
#else /* HAVE_SQLITE3 */
@@ -457,13 +457,13 @@ libbalsa_address_book_gpe_add_address(LibBalsaAddressBook *ab,
r = sqlite3_exec(ab_gpe->db, "insert into contacts_urn values (NULL)",
NULL, NULL, &err);
if (r != SQLITE_OK) {
- libbalsa_address_book_set_status(ab, g_strdup(err));
+ libbalsa_address_book_set_status(ab, err);
sqlite3_free(err);
#else /* HAVE_SQLITE3 */
r = sqlite_exec(ab_gpe->db, "insert into contacts_urn values (NULL)",
NULL, NULL, &err);
if (r != SQLITE_OK) {
- libbalsa_address_book_set_status(ab, g_strdup(err));
+ libbalsa_address_book_set_status(ab, err);
free(err);
#endif /* HAVE_SQLITE3 */
return LBABERR_CANNOT_WRITE;
@@ -578,7 +578,7 @@ libbalsa_address_book_gpe_remove_address(LibBalsaAddressBook *ab,
err = db_delete_by_uid(ab_gpe->db, uid);
if(err) {
- libbalsa_address_book_set_status(ab, g_strdup(err));
+ libbalsa_address_book_set_status(ab, err);
#ifdef HAVE_SQLITE3
sqlite3_free(err);
#else /* HAVE_SQLITE3 */
@@ -641,7 +641,7 @@ libbalsa_address_book_gpe_modify_address(LibBalsaAddressBook *ab,
#ifdef HAVE_SQLITE3
if ((r = sqlite3_exec(ab_gpe->db, "begin transaction",
NULL, NULL, &err)) != SQLITE_OK) {
- libbalsa_address_book_set_status(ab, g_strdup(err));
+ libbalsa_address_book_set_status(ab, err);
sqlite3_free(err); /* failed, so soon!? */
return LBABERR_CANNOT_WRITE;
}
@@ -660,7 +660,7 @@ libbalsa_address_book_gpe_modify_address(LibBalsaAddressBook *ab,
#else /* HAVE_SQLITE3 */
if( (r=sqlite_exec(ab_gpe->db, "begin transaction",
NULL, NULL, &err)) != SQLITE_OK) {
- libbalsa_address_book_set_status(ab, g_strdup(err));
+ libbalsa_address_book_set_status(ab, err);
free(err); /* failed, so soon!? */
return LBABERR_CANNOT_WRITE;
}
@@ -707,7 +707,7 @@ libbalsa_address_book_gpe_modify_address(LibBalsaAddressBook *ab,
#endif /* HAVE_SQLITE3 */
rollback:
- libbalsa_address_book_set_status(ab, g_strdup(err));
+ libbalsa_address_book_set_status(ab, err);
#ifdef HAVE_SQLITE3
sqlite3_free(err);
sqlite3_exec(ab_gpe->db, "rollback transaction", NULL, NULL, NULL);
diff --git a/libbalsa/address-book-ldap.c b/libbalsa/address-book-ldap.c
index b5a5705..5a001d3 100644
--- a/libbalsa/address-book-ldap.c
+++ b/libbalsa/address-book-ldap.c
@@ -293,7 +293,7 @@ libbalsa_address_book_ldap_open_connection(LibBalsaAddressBookLdap * ab_ldap)
ldap_initialize(&ab_ldap->directory, ab_ldap->host);
if (ab_ldap->directory == NULL) { /* very unlikely... */
- libbalsa_address_book_set_status(ab, g_strdup("Host not found"));
+ libbalsa_address_book_set_status(ab, "Host not found");
return LDAP_SERVER_DOWN;
}
/* ignore error if the V3 LDAP cannot be set */
@@ -308,12 +308,11 @@ libbalsa_address_book_ldap_open_connection(LibBalsaAddressBookLdap * ab_ldap)
if(result != LDAP_SUCCESS) {
ldap_unbind_ext(ab_ldap->directory, NULL, NULL);
ab_ldap->directory = NULL;
- libbalsa_address_book_set_status(ab, g_strdup(ldap_err2string(result)));
+ libbalsa_address_book_set_status(ab, ldap_err2string(result));
return result;
}
#else /* HAVE_LDAP_TLS */
- libbalsa_address_book_set_status(ab,
- _("TLS requested but not compiled in"));
+ libbalsa_address_book_set_status(ab, _("TLS requested but not compiled in"));
return LDAP_INAPPRIOPRIATE_AUTH;
#endif /* HAVE_LDAP_TLS */
}
@@ -338,8 +337,7 @@ libbalsa_address_book_ldap_open_connection(LibBalsaAddressBookLdap * ab_ldap)
result = ldap_set_option(ab_ldap->directory, LDAP_OPT_REFERRALS, (void *)LDAP_OPT_OFF);
if (result != LDAP_SUCCESS) {
- libbalsa_address_book_set_status(ab,
- g_strdup(ldap_err2string(result)));
+ libbalsa_address_book_set_status(ab, ldap_err2string(result));
ldap_unbind_ext(ab_ldap->directory, NULL, NULL);
ab_ldap->directory = NULL;
}
@@ -663,8 +661,7 @@ libbalsa_address_book_ldap_add_address(LibBalsaAddressBook *ab,
case LDAP_SUCCESS: g_free(dn); return LBABERR_OK;
case LDAP_ALREADY_EXISTS:
g_free(dn);
- libbalsa_address_book_set_status(ab,
- g_strdup(ldap_err2string(rc)));
+ libbalsa_address_book_set_status(ab, ldap_err2string(rc));
return LBABERR_DUPLICATE;
case LDAP_SERVER_DOWN:
libbalsa_address_book_ldap_close_connection(ab_ldap);
@@ -725,8 +722,7 @@ libbalsa_address_book_ldap_remove_address(LibBalsaAddressBook *ab,
}
} while(cnt++<1);
g_free(dn);
- libbalsa_address_book_set_status(ab,
- g_strdup(ldap_err2string(rc)));
+ libbalsa_address_book_set_status(ab, ldap_err2string(rc));
return LBABERR_CANNOT_WRITE;
}
@@ -849,8 +845,7 @@ libbalsa_address_book_ldap_modify_address(LibBalsaAddressBook *ab,
}
} while(cnt++<1);
g_free(dn);
- libbalsa_address_book_set_status(ab,
- g_strdup(ldap_err2string(rc)));
+ libbalsa_address_book_set_status(ab, ldap_err2string(rc));
return LBABERR_CANNOT_WRITE;
}
diff --git a/libbalsa/address-book-osmo.c b/libbalsa/address-book-osmo.c
index caa4943..4dad611 100644
--- a/libbalsa/address-book-osmo.c
+++ b/libbalsa/address-book-osmo.c
@@ -151,7 +151,11 @@ libbalsa_address_book_osmo_load(LibBalsaAddressBook *ab,
addresses = osmo_read_addresses(osmo, filter, &error);
if (error != NULL) {
- libbalsa_address_book_set_status(ab, g_strdup_printf(_("Reading Osmo contacts failed:
%s"), error->message));
+ gchar *status =
+ g_strdup_printf(_("Reading Osmo contacts failed: %s"),
+ error->message);
+ libbalsa_address_book_set_status(ab, status);
+ g_free(status);
g_error_free(error);
result = LBABERR_CANNOT_SEARCH;
} else {
diff --git a/libbalsa/address-book.c b/libbalsa/address-book.c
index 70e446c..2351710 100644
--- a/libbalsa/address-book.c
+++ b/libbalsa/address-book.c
@@ -189,15 +189,15 @@ libbalsa_address_book_modify_address(LibBalsaAddressBook * ab,
return res;
}
-/* set_status takes over the string ownership */
void
-libbalsa_address_book_set_status(LibBalsaAddressBook * ab, gchar *str)
+libbalsa_address_book_set_status(LibBalsaAddressBook * ab,
+ const gchar * status)
{
LibBalsaAddressBookPrivate *priv = libbalsa_address_book_get_instance_private(ab);
g_return_if_fail(ab);
g_free(priv->ext_op_code);
- priv->ext_op_code = str;
+ priv->ext_op_code = g_strdup(status);
}
void
diff --git a/libbalsa/address-book.h b/libbalsa/address-book.h
index df75d80..8325d84 100644
--- a/libbalsa/address-book.h
+++ b/libbalsa/address-book.h
@@ -100,7 +100,8 @@ LibBalsaABErr libbalsa_address_book_modify_address(LibBalsaAddressBook *ab,
LibBalsaAddress *newval);
/* set_status takes over the string ownership */
-void libbalsa_address_book_set_status(LibBalsaAddressBook * ab, gchar *str);
+void libbalsa_address_book_set_status(LibBalsaAddressBook * ab,
+ const gchar * status);
void libbalsa_address_book_save_config(LibBalsaAddressBook * ab,
const gchar * prefix);
void libbalsa_address_book_load_config(LibBalsaAddressBook * ab,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]