From c330a2e5f86e1f77d3b724877935e11014cefa21 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Tue, 11 Oct 2016 08:55:34 +0200 Subject: ui-blog: fix oid handling We have to use a pointer for walk_tree_ctx->matched_oid. This fixes faulty commit 6e4b7b6776eb994e795fa38b2619db6c55e10ecc (ui-blob: replace 'unsigned char sha1[20]' with 'struct object_id oid'). --- ui-blob.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/ui-blob.c b/ui-blob.c index 2f8bb7a..5f30de7 100644 --- a/ui-blob.c +++ b/ui-blob.c @@ -13,7 +13,7 @@ struct walk_tree_context { const char *match_path; - struct object_id matched_oid; + struct object_id *matched_oid; unsigned int found_path:1; unsigned int file_only:1; }; @@ -28,7 +28,7 @@ static int walk_tree(const unsigned char *sha1, struct strbuf *base, if (strncmp(base->buf, walk_tree_ctx->match_path, base->len) || strcmp(walk_tree_ctx->match_path + base->len, pathname)) return READ_TREE_RECURSIVE; - hashcpy(walk_tree_ctx->matched_oid.hash, sha1); + hashcpy(walk_tree_ctx->matched_oid->hash, sha1); walk_tree_ctx->found_path = 1; return 0; } @@ -47,7 +47,7 @@ int cgit_ref_path_exists(const char *path, const char *ref, int file_only) }; struct walk_tree_context walk_tree_ctx = { .match_path = path, - .matched_oid = oid, + .matched_oid = &oid, .found_path = 0, .file_only = file_only }; @@ -77,7 +77,7 @@ int cgit_print_file(char *path, const char *head, int file_only) }; struct walk_tree_context walk_tree_ctx = { .match_path = path, - .matched_oid = oid, + .matched_oid = &oid, .found_path = 0, .file_only = file_only }; @@ -120,7 +120,7 @@ void cgit_print_blob(const char *hex, char *path, const char *head, int file_onl }; struct walk_tree_context walk_tree_ctx = { .match_path = path, - .matched_oid = oid, + .matched_oid = &oid, .found_path = 0, .file_only = file_only }; -- cgit 1.4.1 /option>
path: root/ui-tree.c (unfollow)
Commit message (Collapse)Author
2007-05-11Added git as a submoduleLars Hjemli
This commit adds the subdirectory 'git' as a submodule containing the git git repository, but doesn't add support for automatically cloning the submodule. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-09Add support for downloading single blobsLars Hjemli
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-08ui-view: show pathname if specified in querystringLars Hjemli
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-08Update to libgit 1.5.2-rc2Lars Hjemli
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-02-21Layout updateLars Hjemli
2007-02-08Make snapshot feature configurableLars Hjemli
Snapshots can now be enabled/disabled by default for all repositories in cgitrc with param "snapshots". Additionally, any repo can override the default setting with param "repo.snapshots". By default, no snapshotting is enabled. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-02-08Add support for snapshotsLars Hjemli
Make a link from the commit viewer to a snapshot of the corresponding tree. Currently only zip-format is supported. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-02-05cgit v0.2Lars Hjemli
Main changes since v0.1: -list tags in repo summary -allow search in log-view -read repository paths from cgitrc Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-02-05Add support for prefix and gitsrc arguments to 'make'Lars Hjemli
This should improve the installation a little, especially since the new options are mentioned in the README. Also, add a make-rule to build the git binaries if necessary + a dependency between cgit and libgit.a. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-02-04Update cgitrc templateLars Hjemli
Make the descriptions more helpfull. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-02-04Add support for lightweight tagsLars Hjemli
There is nothing bad about a tag that has no tag-object, but the old code didn't handle such tags correctly. Fix it. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-02-04Read repo-info from /etc/cgitrcLars Hjemli
This makes cgit read all repo-info from the configfile, instead of scanning for possible git-dirs below a common root path. This is primarily done to get better security (separate physical path from logical repo-name). In /etc/cgitrc each repo is registered with the following keys: repo.url repo.name repo.path repo.desc repo.owner Note: *Required keys are repo.url and repo.path, all others are optional *Each occurrence of repo.url starts a new repository registration *Default value for repo.name is taken from repo.url *The value of repo.url cannot contain characters with special meaning for urls (i.e. one of /?%&), while repo.name can contain anything. Example: repo.url=cgit-pub repo.name=cgit/public repo.path=/pub/git/cgit repo.desc=My public cgit repo repo.owner=Lars Hjemli repo.url=cgit-priv repo.name=cgit/private repo.path=/home/larsh/src/cgit/.git repo.desc=My private cgit repo repo.owner=Lars Hjemli Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-02-04Do not die if tag has no messageLars Hjemli
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-02-03Fix search for non-virtual urlsLars Hjemli
When cgit don't use virtual urls, the current repo and page url parameters must be included in the search form as hidden input fields. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-01-28Update README with install/config informationLars Hjemli