}
}
-gchar *
+gchar*
modest_text_utils_remove_address (const gchar *address_list, const gchar *address)
{
- char *dup, *token, *ptr, *result;
+ gchar *dup, *token, *ptr, *result;
GString *filtered_emails;
- if (!address_list)
- return NULL;
+ g_return_val_if_fail (address_list, NULL);
- /* Search for substring */
+ if (!address)
+ return g_strdup (address_list);
+
+ /* search for substring */
if (!strstr ((const char *) address_list, (const char *) address))
return g_strdup (address_list);
/**
* modest_text_utils_remove_address
- * @address_list: string with a comma-separated list of email addresses
- * @address: an specific e-mail address
+ * @address_list: none-NULL string with a comma-separated list of email addresses
+ * @address: an specific e-mail address
*
- * remove a specific address from a list of email addresses
+ * remove a specific address from a list of email addresses; if @address
+ * is NULL, returns an unchanged @address_list
*
- * Returns: a newly allocated string containing the new list
+ * Returns: a newly allocated string containing the new list, or NULL
+ * in case of error or the original @address_list was NULL
*/
gchar* modest_text_utils_remove_address (const gchar *address_list,
const gchar *address);