{
lang_code_lookup_element_t *element;
if (l == NULL)
- return;
while ((element = RB_FIRST(l)) != NULL) {
RB_REMOVE(l, element, link);
free(element);
free(l);
}
+const char *lang_code_preferred( void )
+{
+ const char *codes = config_get_language(), *ret = "und";
+ const lang_code_t *co;
+
+ if (codes) {
+ co = lang_code_get3(codes);
+ if (co && co->code2b)
+ ret = co->code2b;
+ }
+
+ return ret;
+}
+
void lang_code_done( void )
{
lang_code_free(lang_codes_code2b);
const char *lang_code_get2 ( const char *code, size_t len );
const lang_code_t *lang_code_get3 ( const char *code );
+const char *lang_code_preferred( void );
+
/* Split list of codes as per HTTP Language-Accept spec */
const char **lang_code_split ( const char *codes );
const lang_code_t **lang_code_split2 ( const char *codes );