gettext.c: move get_preferred_languages() from http.c
Calling setlocale(LC_MESSAGES, ...) directly from http.c, without including <locale.h>, was causing compilation warnings. Move the helper function to gettext.c that already includes the header and where locale-related issues are handled. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
f18604bbf2
commit
93f7d9108a
25
gettext.c
25
gettext.c
@ -18,6 +18,31 @@
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Guess the user's preferred languages from the value in LANGUAGE environment
|
||||
* variable and LC_MESSAGES locale category if NO_GETTEXT is not defined.
|
||||
*
|
||||
* The result can be a colon-separated list like "ko:ja:en".
|
||||
*/
|
||||
const char *get_preferred_languages(void)
|
||||
{
|
||||
const char *retval;
|
||||
|
||||
retval = getenv("LANGUAGE");
|
||||
if (retval && *retval)
|
||||
return retval;
|
||||
|
||||
#ifndef NO_GETTEXT
|
||||
retval = setlocale(LC_MESSAGES, NULL);
|
||||
if (retval && *retval &&
|
||||
strcmp(retval, "C") &&
|
||||
strcmp(retval, "POSIX"))
|
||||
return retval;
|
||||
#endif
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
#ifdef GETTEXT_POISON
|
||||
int use_gettext_poison(void)
|
||||
{
|
||||
|
@ -65,4 +65,6 @@ const char *Q_(const char *msgid, const char *plu, unsigned long n)
|
||||
/* Mark msgid for translation but do not translate it. */
|
||||
#define N_(msgid) msgid
|
||||
|
||||
const char *get_preferred_languages(void);
|
||||
|
||||
#endif
|
||||
|
26
http.c
26
http.c
@ -8,6 +8,7 @@
|
||||
#include "credential.h"
|
||||
#include "version.h"
|
||||
#include "pkt-line.h"
|
||||
#include "gettext.h"
|
||||
|
||||
int active_requests;
|
||||
int http_is_verbose;
|
||||
@ -991,31 +992,6 @@ static void extract_content_type(struct strbuf *raw, struct strbuf *type,
|
||||
strbuf_addstr(charset, "ISO-8859-1");
|
||||
}
|
||||
|
||||
/*
|
||||
* Guess the user's preferred languages from the value in LANGUAGE environment
|
||||
* variable and LC_MESSAGES locale category if NO_GETTEXT is not defined.
|
||||
*
|
||||
* The result can be a colon-separated list like "ko:ja:en".
|
||||
*/
|
||||
static const char *get_preferred_languages(void)
|
||||
{
|
||||
const char *retval;
|
||||
|
||||
retval = getenv("LANGUAGE");
|
||||
if (retval && *retval)
|
||||
return retval;
|
||||
|
||||
#ifndef NO_GETTEXT
|
||||
retval = setlocale(LC_MESSAGES, NULL);
|
||||
if (retval && *retval &&
|
||||
strcmp(retval, "C") &&
|
||||
strcmp(retval, "POSIX"))
|
||||
return retval;
|
||||
#endif
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static void write_accept_language(struct strbuf *buf)
|
||||
{
|
||||
/*
|
||||
|
Loading…
Reference in New Issue
Block a user