aboutsummaryrefslogtreecommitdiffstats
path: root/parsing.c
Commit message (Collapse)AuthorAgeLines
* Handle missing timestamp in commit/tag objectsGravatar Lars Hjemli2007-12-03-3/+3
| | | | | | | | | | When a commit or tag lacks author/committer/tagger timestamp, do not skip the next line in the commit/tag object. Also, do not bother to print timestamps with value 0 as it is close to certain to be bogus. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* cgit_parse_commit(): Add missing call to xstrdup()Gravatar Lars Hjemli2007-10-27-2/+2
| | | | | | | It's rather silly to point into random memory-locations. Also, remove a call to strdup() used on a literal char *. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Skip unknown header fields when parsing tags and commitsGravatar Lars Hjemli2007-10-27-0/+6
| | | | | | | | Both the commit- and tagparser failed to handle unexpected header fields. This adds futureproofing by simply skipping any header we don't know/care about. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Add trim_end() and use it to remove trailing slashes from repo pathsGravatar Lars Hjemli2007-06-27-1/+1
| | | | | | | | The new function removes all trailing instances of an arbitrary character from a copy of the supplied char array. This is then used to remove any trailing slashes from cgit_query_path. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Check for NULL commit buffer in cgit_parse_commit()Gravatar Ondrej Jirman2007-05-31-0/+3
| | | | | | This can be NULL, so try not to segfault. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Handle single-line and empty commit subjectsGravatar Ondrej Jirman2007-05-31-3/+8
| | | | | | | | | | If commit object ends with \0 after subject line, then info->subject was not set. This commit fixes this and also sets subject to ** empty ** if it would otherwise be empty, so that there is something to click on. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Don't be fooled by trailing '/' in url-parameterGravatar Lars Hjemli2007-05-19-1/+2
| | | | | | | | cgit_parse_url() didn't check if the path-part of urls contained a real path or just a trailing slash. This made the log-page die since the path filtering supplied an invalid path argument. This fixes it. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Enable url=value querystring parameterGravatar Lars Hjemli2007-05-19-0/+43
| | | | | | | This makes is possible to use repo-urls like '/pub/scm/git/git.git' and even add path specifications, like '/pub/scm/git/git.git/log/documentation'. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Restrict deep nesting of configfilesGravatar Lars Hjemli2007-05-16-4/+6
| | | | | | | | | | | | There is no point in restricting the number of included config- files, but there is a point in restricting the nestinglevel of configfiles: to avoid recursive inclusions. This is easily achieved by decrementing the static nesting-variable upon exit from cgit_read_config(). Also fix some whitespace breakage. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Add include-parameter to config filesGravatar Lars Hjemli2007-05-15-6/+8
| | | | | | | | | This parameter can be used to include another config-file, like a standalone repository listing. Suggested in a patch by Kristian Høgsberg <krh@bitplanet.net> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Update to libgit 1.5.2-rc2Gravatar Lars Hjemli2007-05-09-3/+3
| | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Do not die if tag has no messageGravatar Lars Hjemli2007-02-05-2/+2
| | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Add function cgit_parse_tag()Gravatar Lars Hjemli2007-01-17-0/+47
| | | | | | Teach cgit how to extract author info from a tag. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Handle empty/malformed commit messagesGravatar Lars Hjemli2007-01-17-6/+13
| | | | | | | An empty commit message would trigger a segfault in the current cgit_parse_commit(). Also, make sure that all char-pointers are properly initialized.
* Handle %xx encoding in querystringGravatar Lars Hjemli2007-01-05-0/+21
| | | | | | | Convert valid %xx expressions in querystring to ascii, ignore invalid expressions (i.e. eat the three characters %xx). Signed-off-by: Lars Hjemli <larsh@hal-2004.(none)>
* Handle '+' in querystringGravatar Lars Hjemli2006-12-28-0/+2
| | | | | | Translate '+' to ' ' in querystring parser (still doesn't handle %xx) Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Teach commit parser about author/committer email + timestampGravatar Lars Hjemli2006-12-16-2/+10
| | | | | | | | | | | We want all four of these when showing a commit, so save them in the commitinfo struct. Btw: There's probably no good reason to save committer timestamp since it's already available in commit->date. But it doesn't hurt us either, and it makes the parser look more complete, so we just do it. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Add ui-commit.c + misc ui cleanupsGravatar Lars Hjemli2006-12-16-0/+1
| | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Add a common commit parserGravatar Lars Hjemli2006-12-16-0/+53
| | | | | | Make a better commit parser, replacing the ugly one in ui-log.c Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Rename config.c to parsing.c + move cgit_parse_query from cgit.c to parsing.cGravatar Lars Hjemli2006-12-12-0/+106
Signed-off-by: Lars Hjemli <hjemli@gmail.com>