[PATCH 3/3] ui-stats.c: set parent pointer to NULL after freeing it

2014-07-27 Thread John Keeping
We do this everywhere else, so we should be doing it here as well.

Signed-off-by: John Keeping j...@keeping.me.uk
---
 ui-stats.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/ui-stats.c b/ui-stats.c
index 6f13c32..a264f6a 100644
--- a/ui-stats.c
+++ b/ui-stats.c
@@ -246,6 +246,7 @@ static struct string_list collect_stats(struct cgit_period 
*period)
add_commit(authors, commit, period);
free_commit_buffer(commit);
free_commit_list(commit-parents);
+   commit-parents = NULL;
}
return authors;
 }
-- 
2.0.1.472.g6f92e5f.dirty

___
CGit mailing list
CGit@lists.zx2c4.com
http://lists.zx2c4.com/mailman/listinfo/cgit


[PATCH 2/3] git: update to v2.0.3

2014-07-27 Thread John Keeping
This is slightly more involved than just bumping the version number
because it pulls in a change to convert the commit buffer to a slab,
removing the buffer field from struct commit.  All sites that access
commit-buffer have been changed to use the new functions provided for
this purpose.

Signed-off-by: John Keeping j...@keeping.me.uk
---
 Makefile   | 2 +-
 git| 2 +-
 parsing.c  | 3 ++-
 ui-atom.c  | 3 +--
 ui-log.c   | 6 ++
 ui-stats.c | 2 +-
 6 files changed, 8 insertions(+), 10 deletions(-)

diff --git a/Makefile b/Makefile
index bf8be02..93b525a 100644
--- a/Makefile
+++ b/Makefile
@@ -14,7 +14,7 @@ htmldir = $(docdir)
 pdfdir = $(docdir)
 mandir = $(prefix)/share/man
 SHA1_HEADER = openssl/sha.h
-GIT_VER = 2.0.1
+GIT_VER = 2.0.3
 GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.gz
 INSTALL = install
 COPYTREE = cp -r
diff --git a/git b/git
index 341e7e8..740c281 16
--- a/git
+++ b/git
@@ -1 +1 @@
-Subproject commit 341e7e8eda3dbeb6867f4f8f45b671201b807de5
+Subproject commit 740c281d21ef5b27f6f1b942a4f2fc20f51e8c7e
diff --git a/parsing.c b/parsing.c
index edb3416..3dbd122 100644
--- a/parsing.c
+++ b/parsing.c
@@ -132,7 +132,8 @@ static const char *reencode(char **txt, const char 
*src_enc, const char *dst_enc
 struct commitinfo *cgit_parse_commit(struct commit *commit)
 {
struct commitinfo *ret;
-   const char *p = commit-buffer, *t;
+   const char *p = get_cached_commit_buffer(commit, NULL);
+   const char *t;
 
ret = xmalloc(sizeof(*ret));
ret-commit = commit;
diff --git a/ui-atom.c b/ui-atom.c
index b22d745..e2b39ee 100644
--- a/ui-atom.c
+++ b/ui-atom.c
@@ -133,8 +133,7 @@ void cgit_print_atom(char *tip, char *path, int max_count)
}
while ((commit = get_revision(rev)) != NULL) {
add_entry(commit, host);
-   free(commit-buffer);
-   commit-buffer = NULL;
+   free_commit_buffer(commit);
free_commit_list(commit-parents);
commit-parents = NULL;
}
diff --git a/ui-log.c b/ui-log.c
index b5846e4..bcdb666 100644
--- a/ui-log.c
+++ b/ui-log.c
@@ -388,16 +388,14 @@ void cgit_print_log(const char *tip, int ofs, int cnt, 
char *grep, char *pattern
ofs = 0;
 
for (i = 0; i  ofs  (commit = get_revision(rev)) != NULL; i++) {
-   free(commit-buffer);
-   commit-buffer = NULL;
+   free_commit_buffer(commit);
free_commit_list(commit-parents);
commit-parents = NULL;
}
 
for (i = 0; i  cnt  (commit = get_revision(rev)) != NULL; i++) {
print_commit(commit, rev);
-   free(commit-buffer);
-   commit-buffer = NULL;
+   free_commit_buffer(commit);
free_commit_list(commit-parents);
commit-parents = NULL;
}
diff --git a/ui-stats.c b/ui-stats.c
index bc27308..6f13c32 100644
--- a/ui-stats.c
+++ b/ui-stats.c
@@ -244,7 +244,7 @@ static struct string_list collect_stats(struct cgit_period 
*period)
memset(authors, 0, sizeof(authors));
while ((commit = get_revision(rev)) != NULL) {
add_commit(authors, commit, period);
-   free(commit-buffer);
+   free_commit_buffer(commit);
free_commit_list(commit-parents);
}
return authors;
-- 
2.0.1.472.g6f92e5f.dirty

___
CGit mailing list
CGit@lists.zx2c4.com
http://lists.zx2c4.com/mailman/listinfo/cgit


[PATCH 0/3] Update to Git 2.0.3

2014-07-27 Thread John Keeping
This isn't as simple as just bumping the version number because the
buffer field has been removed from struct commit so we need to
change all of the places that use it to use the new wrapper functions.

The first commit is a preparatory change because the new access function
returns a pointer-to-const where the buffer field was previously just
a char *.  The middle commit is the real change and the final one is
just an unrelated fix I noticed while in the area.

John Keeping (3):
  parsing.c: make commit buffer const
  git: update to v2.0.3
  ui-stats.c: set parent pointer to NULL after freeing it

 Makefile   | 2 +-
 git| 2 +-
 parsing.c  | 9 +
 ui-atom.c  | 3 +--
 ui-log.c   | 6 ++
 ui-stats.c | 3 ++-
 6 files changed, 12 insertions(+), 13 deletions(-)

-- 
2.0.1.472.g6f92e5f.dirty

___
CGit mailing list
CGit@lists.zx2c4.com
http://lists.zx2c4.com/mailman/listinfo/cgit


Re: [PATCH 0/3] Update to Git 2.0.3

2014-07-27 Thread Jason A. Donenfeld
Applied this series. Thanks John.
___
CGit mailing list
CGit@lists.zx2c4.com
http://lists.zx2c4.com/mailman/listinfo/cgit