diff options
author | John Keeping | 2016-08-13 11:53:24 +0100 |
---|---|---|
committer | John Keeping | 2016-10-01 11:46:55 +0100 |
commit | f80b73fa20d5c884114b971a20e1b4bb847e054e (patch) | |
tree | 1b71bedaef26cc193cbeb64bd2f80b5ea64c8cee | |
parent | shared: make cgit_free_taginfo() public (diff) | |
download | cgit-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.c | 6 |
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"); |