[PATCH] Update git to v1.8.2.1

Ferry Huberts mailings at hupie.com
Mon Apr 8 20:16:14 CEST 2013



On 08/04/13 20:12, Ferry Huberts wrote:
> 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...

Correction, when reverting back to my previous cgit, I see that these
files are accessed, but cgit works properly there.


> 
> 
> 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