summaryrefslogtreecommitdiff
path: root/libmu_auth
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org>2017-03-19 17:31:08 +0200
committerSergey Poznyakoff <gray@gnu.org>2017-03-19 17:31:08 +0200
commitafbb33cf9ff750e93a9a4c1f51a3b62d584f056e (patch)
tree81483832472deaa44e98a184b7314a0920960bb7 /libmu_auth
parentafda9ba46c7eb2c061f3907dc7e80ae1ba38157b (diff)
downloadmailutils-afbb33cf9ff750e93a9a4c1f51a3b62d584f056e.tar.gz
mailutils-afbb33cf9ff750e93a9a4c1f51a3b62d584f056e.tar.bz2
Fix a bug in field-map handling.
* libmailutils/cfg/driver.c (parse_mapping): Fix expected value type. * libmu_auth/sql.c (get_field): Remove left-over mu_assoc_ref call (see 622bc770).
Diffstat (limited to 'libmu_auth')
-rw-r--r--libmu_auth/sql.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/libmu_auth/sql.c b/libmu_auth/sql.c
index d69c36c52..c50598d8e 100644
--- a/libmu_auth/sql.c
+++ b/libmu_auth/sql.c
@@ -214,20 +214,23 @@ mu_sql_expand_query (const char *query, const char *ustr)
static int
get_field (mu_sql_connection_t conn, const char *id, char **ret, int mandatory)
{
- const char **name = mu_assoc_ref (mu_sql_module_config.field_map, id);
- int rc = mu_sql_get_field (conn, 0, name ? *name : id, ret);
+ int rc;
+ const char *name = mu_assoc_get (mu_sql_module_config.field_map, id);
+ if (!name)
+ name = id;
+ rc = mu_sql_get_field (conn, 0, name, ret);
if (rc)
{
if (mandatory || rc != MU_ERR_NOENT)
mu_error (_("cannot get SQL field `%s' (`%s'): %s"),
- id, name ? *name : id, mu_strerror (rc));
+ id, name, mu_strerror (rc));
}
else if (!*ret)
{
if (mandatory)
{
mu_error (_("SQL field `%s' (`%s') has NULL value"),
- id, name ? *name : id);
+ id, name);
rc = MU_ERR_READ;
}
else

Return to:

Send suggestions and report system problems to the System administrator.