[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, ¬es, PAGE_ENCODING, 0);
>> + init_display_notes(NULL);
>> + format_display_notes(sha1, ¬es, 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