git: update to v2.30.0

Update to git version v2.30.0, this requires changes for these
upstream commits:

* 88894aaeeae92e8cb41143cc2e045f50289dc790
  blame: simplify 'setup_scoreboard' interface

* 1fbfdf556f2abc708183caca53ae4e2881b46ae2
  banned.h: mark non-reentrant gmtime, etc as banned

Signed-off-by: Christian Hesse <mail@eworm.de>
This commit is contained in:
Christian Hesse 2020-12-28 23:27:13 +01:00 committed by Jason A. Donenfeld
parent b1739247b1
commit cef27b670a
6 changed files with 36 additions and 34 deletions

View File

@ -14,7 +14,7 @@ htmldir = $(docdir)
pdfdir = $(docdir) pdfdir = $(docdir)
mandir = $(prefix)/share/man mandir = $(prefix)/share/man
SHA1_HEADER = <openssl/sha.h> SHA1_HEADER = <openssl/sha.h>
GIT_VER = 2.29.2 GIT_VER = 2.30.0
GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.xz GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.xz
INSTALL = install INSTALL = install
COPYTREE = cp -r COPYTREE = cp -r

View File

@ -401,12 +401,12 @@ int cache_process(int size, const char *path, const char *key, int ttl,
static char *sprintftime(const char *format, time_t time) static char *sprintftime(const char *format, time_t time)
{ {
static char buf[64]; static char buf[64];
struct tm *tm; struct tm tm;
if (!time) if (!time)
return NULL; return NULL;
tm = gmtime(&time); gmtime_r(&time, &tm);
strftime(buf, sizeof(buf)-1, format, tm); strftime(buf, sizeof(buf)-1, format, &tm);
return buf; return buf;
} }

2
git

@ -1 +1 @@
Subproject commit 898f80736c75878acc02dc55672317fcc0e0a5a6 Subproject commit 71ca53e8125e36efbda17293c50027d31681a41f

View File

@ -132,7 +132,8 @@ static void print_object(const struct object_id *oid, const char *path,
init_scoreboard(&sb); init_scoreboard(&sb);
sb.revs = &revs; sb.revs = &revs;
sb.repo = the_repository; sb.repo = the_repository;
setup_scoreboard(&sb, path, &o); sb.path = path;
setup_scoreboard(&sb, &o);
o->suspects = blame_entry_prepend(NULL, 0, sb.num_lines, o); o->suspects = blame_entry_prepend(NULL, 0, sb.num_lines, o);
prio_queue_put(&sb.commits, o->commit); prio_queue_put(&sb.commits, o->commit);
blame_origin_decref(o); blame_origin_decref(o);

View File

@ -22,10 +22,11 @@ static char *http_date(time_t t)
static char month[][4] = static char month[][4] =
{"Jan", "Feb", "Mar", "Apr", "May", "Jun", {"Jan", "Feb", "Mar", "Apr", "May", "Jun",
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}; "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"};
struct tm *tm = gmtime(&t); struct tm tm;
return fmt("%s, %02d %s %04d %02d:%02d:%02d GMT", day[tm->tm_wday], gmtime_r(&t, &tm);
tm->tm_mday, month[tm->tm_mon], 1900 + tm->tm_year, return fmt("%s, %02d %s %04d %02d:%02d:%02d GMT", day[tm.tm_wday],
tm->tm_hour, tm->tm_min, tm->tm_sec); tm.tm_mday, month[tm.tm_mon], 1900 + tm.tm_year,
tm.tm_hour, tm.tm_min, tm.tm_sec);
} }
void cgit_print_error(const char *fmt, ...) void cgit_print_error(const char *fmt, ...)

View File

@ -166,7 +166,7 @@ static void add_commit(struct string_list *authors, struct commit *commit,
struct authorstat *authorstat; struct authorstat *authorstat;
struct string_list *items; struct string_list *items;
char *tmp; char *tmp;
struct tm *date; struct tm date;
time_t t; time_t t;
uintptr_t *counter; uintptr_t *counter;
@ -180,9 +180,9 @@ static void add_commit(struct string_list *authors, struct commit *commit,
authorstat = author->util; authorstat = author->util;
items = &authorstat->list; items = &authorstat->list;
t = info->committer_date; t = info->committer_date;
date = gmtime(&t); gmtime_r(&t, &date);
period->trunc(date); period->trunc(&date);
tmp = xstrdup(period->pretty(date)); tmp = xstrdup(period->pretty(&date));
item = string_list_insert(items, tmp); item = string_list_insert(items, tmp);
counter = (uintptr_t *)&item->util; counter = (uintptr_t *)&item->util;
if (*counter) if (*counter)
@ -215,15 +215,15 @@ static struct string_list collect_stats(const struct cgit_period *period)
int argc = 3; int argc = 3;
time_t now; time_t now;
long i; long i;
struct tm *tm; struct tm tm;
char tmp[11]; char tmp[11];
time(&now); time(&now);
tm = gmtime(&now); gmtime_r(&now, &tm);
period->trunc(tm); period->trunc(&tm);
for (i = 1; i < period->count; i++) for (i = 1; i < period->count; i++)
period->dec(tm); period->dec(&tm);
strftime(tmp, sizeof(tmp), "%Y-%m-%d", tm); strftime(tmp, sizeof(tmp), "%Y-%m-%d", &tm);
argv[2] = xstrdup(fmt("--since=%s", tmp)); argv[2] = xstrdup(fmt("--since=%s", tmp));
if (ctx.qry.path) { if (ctx.qry.path) {
argv[3] = "--"; argv[3] = "--";
@ -261,21 +261,21 @@ static void print_combined_authorrow(struct string_list *authors, int from,
struct string_list_item *date; struct string_list_item *date;
time_t now; time_t now;
long i, j, total, subtotal; long i, j, total, subtotal;
struct tm *tm; struct tm tm;
char *tmp; char *tmp;
time(&now); time(&now);
tm = gmtime(&now); gmtime_r(&now, &tm);
period->trunc(tm); period->trunc(&tm);
for (i = 1; i < period->count; i++) for (i = 1; i < period->count; i++)
period->dec(tm); period->dec(&tm);
total = 0; total = 0;
htmlf("<tr><td class='%s'>%s</td>", leftclass, htmlf("<tr><td class='%s'>%s</td>", leftclass,
fmt(name, to - from + 1)); fmt(name, to - from + 1));
for (j = 0; j < period->count; j++) { for (j = 0; j < period->count; j++) {
tmp = period->pretty(tm); tmp = period->pretty(&tm);
period->inc(tm); period->inc(&tm);
subtotal = 0; subtotal = 0;
for (i = from; i <= to; i++) { for (i = from; i <= to; i++) {
author = &authors->items[i]; author = &authors->items[i];
@ -300,20 +300,20 @@ static void print_authors(struct string_list *authors, int top,
struct string_list_item *date; struct string_list_item *date;
time_t now; time_t now;
long i, j, total; long i, j, total;
struct tm *tm; struct tm tm;
char *tmp; char *tmp;
time(&now); time(&now);
tm = gmtime(&now); gmtime_r(&now, &tm);
period->trunc(tm); period->trunc(&tm);
for (i = 1; i < period->count; i++) for (i = 1; i < period->count; i++)
period->dec(tm); period->dec(&tm);
html("<table class='stats'><tr><th>Author</th>"); html("<table class='stats'><tr><th>Author</th>");
for (j = 0; j < period->count; j++) { for (j = 0; j < period->count; j++) {
tmp = period->pretty(tm); tmp = period->pretty(&tm);
htmlf("<th>%s</th>", tmp); htmlf("<th>%s</th>", tmp);
period->inc(tm); period->inc(&tm);
} }
html("<th>Total</th></tr>\n"); html("<th>Total</th></tr>\n");
@ -329,10 +329,10 @@ static void print_authors(struct string_list *authors, int top,
items = &authorstat->list; items = &authorstat->list;
total = 0; total = 0;
for (j = 0; j < period->count; j++) for (j = 0; j < period->count; j++)
period->dec(tm); period->dec(&tm);
for (j = 0; j < period->count; j++) { for (j = 0; j < period->count; j++) {
tmp = period->pretty(tm); tmp = period->pretty(&tm);
period->inc(tm); period->inc(&tm);
date = string_list_lookup(items, tmp); date = string_list_lookup(items, tmp);
if (!date) if (!date)
html("<td>0</td>"); html("<td>0</td>");