summaryrefslogtreecommitdiff
path: root/src/exchange/taler-exchange-httpd_terms.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/exchange/taler-exchange-httpd_terms.c')
-rw-r--r--src/exchange/taler-exchange-httpd_terms.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/exchange/taler-exchange-httpd_terms.c b/src/exchange/taler-exchange-httpd_terms.c
index 499c09a5d..b3d7c3442 100644
--- a/src/exchange/taler-exchange-httpd_terms.c
+++ b/src/exchange/taler-exchange-httpd_terms.c
@@ -45,7 +45,7 @@ struct Terms
/**
* The desired language.
*/
- const char *language;
+ char *language;
/**
* Number of bytes in @e terms.
@@ -215,13 +215,21 @@ TEH_handler_terms (struct TEH_RequestHandler *rh,
p->mime_type)) )
{
if ( (NULL == t) ||
+ (! mime_matches (mime,
+ t->mime_type)) ||
(language_matches (lang,
- p->mime_type) >
+ p->language) >
language_matches (lang,
- t->mime_type) ) )
+ t->language) ) )
t = p;
}
}
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "Best match for %s/%s: %s / %s\n",
+ lang,
+ mime,
+ (NULL != t) ? t->mime_type : "<none>",
+ (NULL != t) ? t->language : "<none>");
}
if (NULL == t)
@@ -440,7 +448,7 @@ load_terms (const char *path,
struct Terms t = {
.mime_type = mime,
.terms = buf,
- .language = lang,
+ .language = GNUNET_strdup (lang),
.terms_size = bsize
};