commit - cdb914e5a0f172fb2b47056756c143dace8f1977
commit + 9d84e7dd9e16bfa028f8607ebeae226c7ea4c0ed
blob - 8f9b2cf6f568f007f0e1d1cce187828cc667f290
blob + 106ff970598595629b38dd4456b7d32c91379c50
--- Makefile.inc
+++ Makefile.inc
CPPFLAGS += -DGOT_LIBEXECDIR=${LIBEXECDIR} -DGOT_VERSION=${GOT_VERSION}
-CFLAGS += -Werror -Wall -Wstrict-prototypes -Wunused-variable
+#CFLAGS += -Werror -Wall -Wstrict-prototypes -Wunused-variable
#CFLAGS += -DGOT_PACK_NO_MMAP
#CFLAGS += -DGOT_NO_OBJ_CACHE
#CFLAGS += -DGOT_OBJ_CACHE_DEBUG
blob - 0ba9cc13b26a4335693a021bb34188e6a2cb7e32
blob + 69b21bc7c6576a212fa584990ba15f078a2e2883
--- gotweb/gotweb.c
+++ gotweb/gotweb.c
static char *gw_get_repo_age(struct trans *,
char *, char *, int);
static char *gw_get_repo_shortlog(struct trans *,
- const char *);
+ const char *, int);
static char *gw_get_repo_tags(struct trans *);
static char *gw_get_repo_heads(struct trans *);
static char *gw_get_clone_url(struct trans *, char *);
gw_shortlog(struct trans *gw_trans)
{
const struct got_error *error = NULL;
+ char *shortlog, *shortlog_html;
+ shortlog = gw_get_repo_shortlog(gw_trans, NULL,
+ gw_trans->gw_conf->got_max_commits_display);
+
+ if (shortlog != NULL && strcmp(shortlog, "") != 0) {
+ if ((asprintf(&shortlog_html, summary_shortlog,
+ shortlog)) == -1)
+ return got_error_from_errno("asprintf");
+ khttp_puts(gw_trans->gw_req, shortlog_html);
+ free(shortlog_html);
+ free(shortlog);
+ }
+
return error;
}
}
khttp_puts(gw_trans->gw_req, div_end);
- shortlog = gw_get_repo_shortlog(gw_trans, NULL);
+ shortlog = gw_get_repo_shortlog(gw_trans, NULL, D_MAXSLCOMMDISP);
tags = gw_get_repo_tags(gw_trans);
heads = gw_get_repo_heads(gw_trans);
}
static char *
-gw_get_repo_shortlog(struct trans *gw_trans, const char *search_pattern)
+gw_get_repo_shortlog(struct trans *gw_trans, const char *search_pattern,
+ int limit)
{
const struct got_error *error;
struct got_repository *repo = NULL;
char *start_commit = NULL, *shortlog = NULL, *id_str = NULL,
*path = NULL, *in_repo_path = NULL, *commit_row = NULL,
*commit_age = NULL, *commit_author = NULL, *commit_log = NULL,
- *shortlog_navs_html = NULL;
+ *commit_log0, *newline, *shortlog_navs_html = NULL;
regex_t regex;
- int have_match, limit = D_MAXSLCOMMDISP;
+ int have_match;
size_t newsize;
struct buf *diffbuf;
time_t committer_time;
TM_DIFF));
asprintf(&commit_author, "%s",
got_object_commit_get_author(commit_disp));
- error = got_object_commit_get_logmsg(&commit_log, commit_disp);
+ error = got_object_commit_get_logmsg(&commit_log0, commit_disp);
if (error)
commit_log = strdup("");
+ else {
+ commit_log = commit_log0;
+ while (*commit_log == '\n')
+ commit_log++;
+ newline = strchr(commit_log, '\n');
+ if (newline)
+ *newline = '\0';
+ }
asprintf(&shortlog_navs_html, shortlog_navs,
gw_trans->repo_name, id_str, gw_trans->repo_name, id_str,
gw_trans->repo_name, id_str, gw_trans->repo_name, id_str);
free(commit_age);
free(commit_author);
- free(commit_log);
+ free(commit_log0);
free(shortlog_navs_html);
free(commit_row);
free(id_str);