| -rw-r--r-- | Makefile | 4 | ||||
| -rw-r--r-- | filter.c | 2 | ||||
| m--------- | git | 0 | ||||
| -rw-r--r-- | parsing.c | 8 | ||||
| -rw-r--r-- | shared.c | 3 | ||||
| -rw-r--r-- | ui-blame.c | 2 | ||||
| -rw-r--r-- | ui-clone.c | 24 | ||||
| -rw-r--r-- | ui-plain.c | 2 |
8 files changed, 26 insertions, 19 deletions
@@ -1,6 +1,6 @@ all:: -CGIT_VERSION = v1.3 +CGIT_VERSION = v1.3.1 CGIT_SCRIPT_NAME = cgit.cgi CGIT_SCRIPT_PATH = /var/www/htdocs/cgit CGIT_DATA_PATH = $(CGIT_SCRIPT_PATH) @@ -14,7 +14,7 @@ htmldir = $(docdir) pdfdir = $(docdir) mandir = $(prefix)/share/man SHA1_HEADER = <openssl/sha.h> -GIT_VER = 2.53.0 +GIT_VER = 2.54.0 GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.xz INSTALL = install COPYTREE = cp -r @@ -402,7 +402,7 @@ static const struct { struct cgit_filter *cgit_new_filter(const char *cmd, filter_type filtertype) { - char *colon; + const char *colon; int i; size_t len; int argument_count; diff --git a/git b/git -Subproject 67ad42147a7acc2af6074753ebd03d904476118 +Subproject 94f057755b7941b321fd11fec1b2e3ca5313a4e @@ -19,7 +19,7 @@ */ void cgit_parse_url(const char *url) { - char *c, *cmd, *p; + char *c, *cmd, *p, *buf; struct cgit_repo *repo; if (!url || url[0] == '\0') @@ -32,11 +32,12 @@ void cgit_parse_url(const char *url) return; } + buf = xstrdup(url); cmd = NULL; - c = strchr(url, '/'); + c = strchr(buf, '/'); while (c) { c[0] = '\0'; - repo = cgit_get_repoinfo(url); + repo = cgit_get_repoinfo(buf); if (repo) { ctx.repo = repo; cmd = c; @@ -56,6 +57,7 @@ void cgit_parse_url(const char *url) if (cmd[1]) ctx.qry.page = xstrdup(cmd + 1); } + free(buf); } static char *substr(const char *head, const char *tail) @@ -551,7 +551,8 @@ char *expand_macros(const char *txt) char *get_mimetype_for_filename(const char *filename) { - char *ext, *mimetype, line[1024]; + const char *ext; + char *mimetype, line[1024]; struct string_list list = STRING_LIST_INIT_NODUP; int i; FILE *file; @@ -263,7 +263,7 @@ static int walk_tree(const struct object_id *oid, struct strbuf *base, static int basedir_len(const char *path) { - char *p = strrchr(path, '/'); + const char *p = strrchr(path, '/'); if (p) return p - path + 1; return 0; @@ -33,22 +33,26 @@ static int print_ref_info(const struct reference *ref, void *cb_data) static void print_pack_info(void) { - struct packfile_list_entry *e; + struct odb_source *source; char *offset; ctx.page.mimetype = "text/plain"; ctx.page.filename = "objects/info/packs"; cgit_print_http_headers(); odb_reprepare(the_repository->objects); - for (e = packfile_store_get_packs(the_repository->objects->sources->packfiles); e; e = e->next) { - struct packed_git *p = e->pack; - if (p->pack_local) { - offset = strrchr(p->pack_name, '/'); - if (offset && offset[1] != '\0') - ++offset; - else - offset = p->pack_name; - htmlf("P %s\n", offset); + for (source = the_repository->objects->sources; source; source = source->next) { + struct odb_source_files *files = odb_source_files_downcast(source); + struct packfile_list_entry *e; + for (e = files->packed->packs.head; e; e = e->next) { + struct packed_git *p = e->pack; + if (p->pack_local) { + offset = strrchr(p->pack_name, '/'); + if (offset && offset[1] != '\0') + ++offset; + else + offset = p->pack_name; + htmlf("P %s\n", offset); + } } } } @@ -157,7 +157,7 @@ static int walk_tree(const struct object_id *oid, struct strbuf *base, static int basedir_len(const char *path) { - char *p = strrchr(path, '/'); + const char *p = strrchr(path, '/'); if (p) return p - path + 1; return 0; |