On Thu, Feb 26, 2015 at 1:42 PM, Junio C Hamano <gitster@xxxxxxxxx> wrote:> > Here is what I queued. Thanks. I did not follow the thread if there are any intermediate patches, though it applied cleanly. Applying this on top of f18604bbf2c391c689a41fca14cbaeff5e106255 (http: add Accept-Language header if possible) still doesn't compile for me. http.c:1001:20: error: static declaration of 'get_preferred_languages' follows non-static declaration static const char *get_preferred_languages(void) ^ In file included from cache.h:8:0, from http.h:4, from http.c:2: gettext.h:68:13: note: previous declaration of 'get_preferred_languages' was here const char *get_preferred_languages(void); ^ http.c: In function 'get_preferred_languages': http.c:1010:2: warning: implicit declaration of function 'setlocale' [-Wimplicit-function-declaration] retval = setlocale(LC_MESSAGES, NULL); ^ http.c:1010:21: error: 'LC_MESSAGES' undeclared (first use in this function) retval = setlocale(LC_MESSAGES, NULL); ^ http.c:1010:21: note: each undeclared identifier is reported only once for each function it appears in Rebasing this on top of current master (Post 2.3 cyle (batch #5)) also fails: http.c:1013:20: error: static declaration of 'get_preferred_languages' follows non-static declaration static const char *get_preferred_languages(void) ^ In file included from cache.h:8:0, from http.h:4, from http.c:2: gettext.h:92:13: note: previous declaration of 'get_preferred_languages' was here const char *get_preferred_languages(void); ^ http.c: In function 'get_preferred_languages': http.c:1022:2: warning: implicit declaration of function 'setlocale' [-Wimplicit-function-declaration] retval = setlocale(LC_MESSAGES, NULL); ^ http.c:1022:21: error: 'LC_MESSAGES' undeclared (first use in this function) retval = setlocale(LC_MESSAGES, NULL); ^ http.c:1022:21: note: each undeclared identifier is reported only once for each function it appears in > > -- >8 -- > From: Jeff King <peff@xxxxxxxx> > Date: Wed, 25 Feb 2015 22:04:16 -0500 > Subject: [PATCH] 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@xxxxxxxx> > Signed-off-by: Junio C Hamano <gitster@xxxxxxxxx> > --- > gettext.c | 25 +++++++++++++++++++++++++ > gettext.h | 2 ++ > http.c | 1 + > 3 files changed, 28 insertions(+) > > diff --git a/gettext.c b/gettext.c > index 8b2da46..7378ba2 100644 > --- a/gettext.c > +++ b/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) > { > diff --git a/gettext.h b/gettext.h > index 7671d09..e539482 100644 > --- a/gettext.h > +++ b/gettext.h > @@ -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 > diff --git a/http.c b/http.c > index 8b659b6..71ed418 100644 > --- a/http.c > +++ b/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; > -- > 2.3.1-280-g2531f2d > > -- > To unsubscribe from this list: send the line "unsubscribe git" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html