[PATCH] Update git to v1.8.2.1

Ferry Huberts mailings at hupie.com
Mon Apr 8 20:12:09 CEST 2013


I'm sorry to report that this patch, commit
849ecd961df9454d6f849eac34e6f501395c4f01, breaks on my CentOS 6.4 servers.

I'm getting an 'Internal Server Error' with entries like the following
in the logs, and cgit just dies.

> [Mon Apr 08 20:01:38 2013] [error] [client 192.168.180.8] warning: unable to access '/root/etc/gitconfig': Permission denied, referer: https://git/reposerf/cgit/
> [Mon Apr 08 20:01:38 2013] [error] [client 192.168.180.8] warning: unable to access '/root/etc/gitattributes': Permission denied, referer: https://git/reposerf/cgit/
> 
> [Mon Apr 08 20:07:19 2013] [error] [client 192.168.180.8] fatal: unable to access '/root/etc/gitconfig': Permission denied, referer: http://git/reposerf/cgit/
> [Mon Apr 08 20:07:19 2013] [error] [client 192.168.180.8] Premature end of script headers: reposerfCgit.cgi, referer: http://git/reposerf/cgit/
> 
> [Mon Apr 08 20:07:28 2013] [error] [client 192.168.180.8] fatal: unable to access '/root/etc/gitconfig': Permission denied, referer: http://git/reposerf/cgit/
> [Mon Apr 08 20:07:28 2013] [error] [client 192.168.180.8] Premature end of script headers: reposerfCgit.cgi, referer: http://git/reposerf/cgit/



Why are these files suddenly accessed?
They weren't before...


My build config (cgit.conf) is

> CGIT_SCRIPT_NAME = reposerfCgit.cgi
> CGIT_SCRIPT_PATH = /var/www/cgi-bin
> CGIT_DATA_PATH = /home/reposerf/cgit/httpd.html
> CGIT_CONFIG = /home/reposerf/cgit/cgit.d/cgitrc
> CACHE_ROOT = /var/cache/reposerf.cgit
> filterdir = /home/reposerf/cgit/cgit.filters







On 08/04/13 10:00, John Keeping wrote:
> This requires a small change to how we handle notes, but otherwise just
> works.
> 
> Note that we can't use anything from v1.8.0 until v1.8.2.1 because some
> of the symbols that we need for graph drawing were made private in
> v1.8.0 and this was not reverted until v1.8.2.1.
> 
> Signed-off-by: John Keeping <john at keeping.me.uk>
> ---
>  Makefile    | 2 +-
>  git         | 2 +-
>  ui-commit.c | 3 ++-
>  ui-log.c    | 6 +++---
>  4 files changed, 7 insertions(+), 6 deletions(-)
> 
> diff --git a/Makefile b/Makefile
> index 83d4716..59edab0 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -14,7 +14,7 @@ htmldir = $(docdir)
>  pdfdir = $(docdir)
>  mandir = $(prefix)/share/man
>  SHA1_HEADER = <openssl/sha.h>
> -GIT_VER = 1.7.12.4
> +GIT_VER = 1.8.2.1
>  GIT_URL = https://git-core.googlecode.com/files/git-$(GIT_VER).tar.gz
>  INSTALL = install
>  MAN5_TXT = $(wildcard *.5.txt)
> diff --git a/git b/git
> index 7e20105..5bda18c 160000
> --- a/git
> +++ b/git
> @@ -1 +1 @@
> -Subproject commit 7e2010537e96d0a1144520222f20ba1dc3d61441
> +Subproject commit 5bda18c186e455f8e65f976d3bf333ab1f4b5b53
> diff --git a/ui-commit.c b/ui-commit.c
> index 0783285..5a552a1 100644
> --- a/ui-commit.c
> +++ b/ui-commit.c
> @@ -36,7 +36,8 @@ void cgit_print_commit(char *hex, const char *prefix)
>  	}
>  	info = cgit_parse_commit(commit);
>  
> -	format_note(NULL, sha1, &notes, PAGE_ENCODING, 0);
> +	init_display_notes(NULL);
> +	format_display_notes(sha1, &notes, PAGE_ENCODING, 0);
>  
>  	load_ref_decorations(DECORATE_FULL_REFS);
>  
> diff --git a/ui-log.c b/ui-log.c
> index aaffb4e..8d8b235 100644
> --- a/ui-log.c
> +++ b/ui-log.c
> @@ -195,9 +195,8 @@ static void print_commit(struct commit *commit, struct rev_info *revs)
>  				strbuf_addstr(&msgbuf, info->msg);
>  				strbuf_addch(&msgbuf, '\n');
>  			}
> -			format_note(NULL, commit->object.sha1, &msgbuf,
> -			            PAGE_ENCODING,
> -			            NOTES_SHOW_HEADER | NOTES_INDENT);
> +			format_display_notes(commit->object.sha1,
> +					     &msgbuf, PAGE_ENCODING, 0);
>  			strbuf_addch(&msgbuf, '\n');
>  			strbuf_ltrim(&msgbuf);
>  		}
> @@ -397,6 +396,7 @@ void cgit_print_log(const char *tip, int ofs, int cnt, char *grep, char *pattern
>  		commit->parents = NULL;
>  	}
>  
> +	init_display_notes(NULL);
>  	for (i = 0; i < cnt && (commit = get_revision(&rev)) != NULL; i++) {
>  		print_commit(commit, &rev);
>  		free(commit->buffer);
> 

-- 
Ferry Huberts




More information about the CGit mailing list