threads / patch / 30728

patchUse system_path to find 'po'-dir to resolve relative paths

Subject: [PATCH] Use system_path to find 'po'-dir to resolve relative paths

## tl;dr

3 messages between Jun 6, 2012 and Jun 6, 2012. Diffs are folded; open one to read it.

replies: 2people: 2as markdown or json

Vincent van Ravesteijn· Jun 6, 2012, 13:01 UTC · lore

If the specified path for the 'po'-files is a relative path and if RUNTIME_PREFIX is set, system_path must be used to resolve the directory relative to the executable.

Signed-off-by: Vincent van Ravesteijn <vfr@lyx.org>
---
 gettext.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)
Show changes to gettext.c +2 −1
diff --git a/gettext.c b/gettext.c
index f75bca7..632ccf8 100644
--- a/gettext.c
+++ b/gettext.c
@@ -4,6 +4,7 @@
 
 #include "git-compat-util.h"
 #include "gettext.h"
+#include "exec_cmd.h"
 
 #ifndef NO_GETTEXT
 #	include <locale.h>
@@ -123,7 +124,7 @@ void git_setup_gettext(void)
 
 	if (!podir)
 		podir = GIT_LOCALE_PATH;
-	bindtextdomain("git", podir);
+	bindtextdomain("git", system_path(podir));
 	setlocale(LC_MESSAGES, "");
 	init_gettext_charset("git");
 	textdomain("git");
-- 
1.7.9.msysgit.0
Vincent van Ravesteijn· Jun 6, 2012, 13:03 UTC · re: Vincent van Ravesteijn · lore

[PATCH] git-upload-pack: Setup exec_path before gettext

If RUNTIME_PREFIX is set, git_setup_gettext() uses system_path() to find the directory with po-files. The function system_path() needs the exec_path so this needs to be setup first before setting up gettext().

Signed-off-by: Vincent van Ravesteijn <vfr@lyx.org>
---
 upload-pack.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)
Show changes to upload-pack.c +3 −2
diff --git a/upload-pack.c b/upload-pack.c
index bb08e2e..f5ba770 100644
--- a/upload-pack.c
+++ b/upload-pack.c
@@ -791,10 +791,11 @@ int main(int argc, char **argv)
 	int i;
 	int strict = 0;
 
-	git_setup_gettext();
-
 	packet_trace_identity("upload-pack");
 	git_extract_argv0_path(argv[0]);
+	
+	git_setup_gettext();
+
 	read_replace_refs = 0;
 
 	for (i = 1; i < argc; i++) {
-- 
1.7.9.msysgit.0
Junio C Hamano· Jun 6, 2012, 18:28 UTC · re: Vincent van Ravesteijn · lore

Re: [PATCH] Use system_path to find 'po'-dir to resolve relative paths

Vincent van Ravesteijn <vfr@lyx.org> writes:
Show 5 quoted lines
> If the specified path for the 'po'-files is a relative path and if
> RUNTIME_PREFIX is set, system_path must be used to resolve the directory relative to the executable.
>
> Signed-off-by: Vincent van Ravesteijn <vfr@lyx.org>
> ---

Hrm, I'd prefer to see anything that involves RUNTIME_PREFIX first tested in msysgit tree and then fed to me through them.

Thanks.
Show 24 quoted lines
>  gettext.c |    3 ++-
>  1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/gettext.c b/gettext.c
> index f75bca7..632ccf8 100644
> --- a/gettext.c
> +++ b/gettext.c
> @@ -4,6 +4,7 @@
>  
>  #include "git-compat-util.h"
>  #include "gettext.h"
> +#include "exec_cmd.h"
>  
>  #ifndef NO_GETTEXT
>  #	include <locale.h>
> @@ -123,7 +124,7 @@ void git_setup_gettext(void)
>  
>  	if (!podir)
>  		podir = GIT_LOCALE_PATH;
> -	bindtextdomain("git", podir);
> +	bindtextdomain("git", system_path(podir));
>  	setlocale(LC_MESSAGES, "");
>  	init_gettext_charset("git");
>  	textdomain("git");

← back to recent threads