about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorJohn Keeping2016-08-13 11:53:24 +0100
committerJohn Keeping2016-10-01 11:46:55 +0100
commitf80b73fa20d5c884114b971a20e1b4bb847e054e (patch)
tree1b71bedaef26cc193cbeb64bd2f80b5ea64c8cee
parentshared: make cgit_free_taginfo() public (diff)
downloadcgit-f80b73fa20d5c884114b971a20e1b4bb847e054e.tar.gz
cgit-f80b73fa20d5c884114b971a20e1b4bb847e054e.zip
ui-tag: clean up taginfo
Free the taginfo when we're done with it.  Also reduce the scope of a
couple of variables so that it's clear that this is the only path that
uses the taginfo structure.

Coverity-Id: 141883
Signed-off-by: John Keeping <john@keeping.me.uk>
-rw-r--r--ui-tag.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/ui-tag.c b/ui-tag.c index 6b838cb..3fa63b3 100644 --- a/ui-tag.c +++ b/ui-tag.c
@@ -44,8 +44,6 @@ void cgit_print_tag(char *revname)
44 struct strbuf fullref = STRBUF_INIT; 44 struct strbuf fullref = STRBUF_INIT;
45 unsigned char sha1[20]; 45 unsigned char sha1[20];
46 struct object *obj; 46 struct object *obj;
47 struct tag *tag;
48 struct taginfo *info;
49 47
50 if (!revname) 48 if (!revname)
51 revname = ctx.qry.head; 49 revname = ctx.qry.head;
@@ -63,6 +61,9 @@ void cgit_print_tag(char *revname)
63 goto cleanup; 61 goto cleanup;
64 } 62 }
65 if (obj->type == OBJ_TAG) { 63 if (obj->type == OBJ_TAG) {
64 struct tag *tag;
65 struct taginfo *info;
66
66 tag = lookup_tag(sha1); 67 tag = lookup_tag(sha1);
67 if (!tag || parse_tag(tag) || !(info = cgit_parse_tag(tag))) { 68 if (!tag || parse_tag(tag) || !(info = cgit_parse_tag(tag))) {
68 cgit_print_error_page(500, "Internal server error", 69 cgit_print_error_page(500, "Internal server error",
@@ -99,6 +100,7 @@ void cgit_print_tag(char *revname)
99 html("</table>\n"); 100 html("</table>\n");
100 print_tag_content(info->msg); 101 print_tag_content(info->msg);
101 cgit_print_layout_end(); 102 cgit_print_layout_end();
103 cgit_free_taginfo(info);
102 } else { 104 } else {
103 cgit_print_layout_start(); 105 cgit_print_layout_start();
104 html("<table class='commit-info'>\n"); 106 html("<table class='commit-info'>\n");