cgit

commit e01229cf80bc618a132d2154c0ebd71792d31c64

Author: Lars Hjemli <hjemli@gmail.com>

ui-repolist: handle empty sections similar to NULL sections

Signed-off-by: Lars Hjemli <hjemli@gmail.com>

 cgit.c | 1 +
 ui-repolist.c | 18 +++++++++++-------


diff --git a/cgit.c b/cgit.c
index e281aa9e224aca176db47ae4ddd4cdc7d9422b64..167b5dd312ed3a63a6334224387b52e27b233461 100644
--- a/cgit.c
+++ b/cgit.c
@@ -269,6 +269,7 @@ 	ctx->cfg.robots = "index, nofollow";
 	ctx->cfg.root_title = "Git repository browser";
 	ctx->cfg.root_desc = "a fast webinterface for the git dscm";
 	ctx->cfg.script_name = CGIT_SCRIPT_NAME;
+	ctx->cfg.section = "";
 	ctx->cfg.summary_branches = 10;
 	ctx->cfg.summary_log = 10;
 	ctx->cfg.summary_tags = 10;




diff --git a/ui-repolist.c b/ui-repolist.c
index d56654d72a0f076681d0d3d4f2e617c40a4974e0..3ef2e99deb18c3cff37a76d59dbc1f157671d666 100644
--- a/ui-repolist.c
+++ b/ui-repolist.c
@@ -217,6 +217,7 @@ void cgit_print_repolist()
 {
 	int i, columns = 4, hits = 0, header = 0;
 	char *last_section = NULL;
+	char *section;
 	int sorted = 0;
 
 	if (ctx.cfg.enable_index_links)
@@ -247,19 +248,22 @@ 		if (hits > ctx.qry.ofs + ctx.cfg.max_repo_count)
 			continue;
 		if (!header++)
 			print_header(columns);
+		section = ctx.repo->section;
+		if (section && !strcmp(section, ""))
+			section = NULL;
 		if (!sorted &&
-		    ((last_section == NULL && ctx.repo->section != NULL) ||
-		    (last_section != NULL && ctx.repo->section == NULL) ||
-		    (last_section != NULL && ctx.repo->section != NULL &&
-		     strcmp(ctx.repo->section, last_section)))) {
+		    ((last_section == NULL && section != NULL) ||
+		    (last_section != NULL && section == NULL) ||
+		    (last_section != NULL && section != NULL &&
+		     strcmp(section, last_section)))) {
 			htmlf("<tr class='nohover'><td colspan='%d' class='reposection'>",
 			      columns);
-			html_txt(ctx.repo->section);
+			html_txt(section);
 			html("</td></tr>");
-			last_section = ctx.repo->section;
+			last_section = section;
 		}
 		htmlf("<tr><td class='%s'>",
-		      !sorted && ctx.repo->section ? "sublevel-repo" : "toplevel-repo");
+		      !sorted && section ? "sublevel-repo" : "toplevel-repo");
 		cgit_summary_link(ctx.repo->name, ctx.repo->name, NULL, NULL);
 		html("</td><td>");
 		html_link_open(cgit_repourl(ctx.repo->url), NULL, NULL);