[PATCH] lib: fwts_log_*: fix a few smatch errors
Colin King
colin.king at canonical.com
Wed Mar 6 18:49:07 UTC 2013
From: Colin Ian King <colin.king at canonical.com>
Minor re-working to fix up some smatch errors in fwts_log_*.c,
for example:
fwts_log_xml.c:142 fwts_log_section_begin_xml() error:
testing array offset 'xml_stack_index' after use.
Signed-off-by: Colin Ian King <colin.king at canonical.com>
---
src/lib/src/fwts_log_html.c | 7 +++----
src/lib/src/fwts_log_json.c | 8 ++++----
src/lib/src/fwts_log_xml.c | 7 +++----
3 files changed, 10 insertions(+), 12 deletions(-)
diff --git a/src/lib/src/fwts_log_html.c b/src/lib/src/fwts_log_html.c
index 4b907c5..89557d4 100644
--- a/src/lib/src/fwts_log_html.c
+++ b/src/lib/src/fwts_log_html.c
@@ -376,8 +376,6 @@ static void fwts_log_newline_html(fwts_log_file *log_file)
static void fwts_log_section_begin_html(fwts_log_file *log_file, const char *name)
{
- html_stack[html_stack_index].name = name;
-
if (!strcmp(name, "summary")) {
fwts_log_html(log_file, "<TR><TD class=style_heading COLSPAN=2>Summary</TD></TR>\n");
} else if (!strcmp(name, "heading")) {
@@ -390,9 +388,10 @@ static void fwts_log_section_begin_html(fwts_log_file *log_file, const char *nam
fflush(log_file->fp);
- if (html_stack_index < MAX_HTML_STACK)
+ if (html_stack_index < MAX_HTML_STACK) {
+ html_stack[html_stack_index].name = name;
html_stack_index++;
- else {
+ } else {
fprintf(stderr, "html log stack overflow pushing section %s.\n", name);
exit(EXIT_FAILURE);
}
diff --git a/src/lib/src/fwts_log_json.c b/src/lib/src/fwts_log_json.c
index f83abc5..bf28c0c 100644
--- a/src/lib/src/fwts_log_json.c
+++ b/src/lib/src/fwts_log_json.c
@@ -178,16 +178,16 @@ static void fwts_log_section_begin_json(fwts_log_file *log_file, const char *nam
*/
json_object_object_add(json_obj, name, json_log);
- json_stack[json_stack_index].obj = json_obj;
- json_stack[json_stack_index].log = json_log;
if (json_stack_index > 0)
if (json_object_array_add(json_stack[json_stack_index-1].log, json_obj) != 0)
fwts_log_out_of_memory_json();
- if (json_stack_index < MAX_JSON_STACK)
+ if (json_stack_index < MAX_JSON_STACK) {
+ json_stack[json_stack_index].obj = json_obj;
+ json_stack[json_stack_index].log = json_log;
json_stack_index++;
- else {
+ } else {
fprintf(stderr, "json log stack overflow pushing section %s.\n", name);
exit(EXIT_FAILURE);
}
diff --git a/src/lib/src/fwts_log_xml.c b/src/lib/src/fwts_log_xml.c
index b737357..393dfbe 100644
--- a/src/lib/src/fwts_log_xml.c
+++ b/src/lib/src/fwts_log_xml.c
@@ -134,14 +134,13 @@ static void fwts_log_newline_xml(fwts_log_file *log_file)
static void fwts_log_section_begin_xml(fwts_log_file *log_file, const char *name)
{
- xml_stack[xml_stack_index].name = name;
-
fprintf(log_file->fp, "%*s<%s>\n", xml_stack_index * XML_INDENT, "", name);
fflush(log_file->fp);
- if (xml_stack_index < MAX_XML_STACK)
+ if (xml_stack_index < MAX_XML_STACK) {
+ xml_stack[xml_stack_index].name = name;
xml_stack_index++;
- else {
+ } else {
fprintf(stderr, "xml log stack overflow pushing section %s.\n", name);
exit(EXIT_FAILURE);
}
--
1.8.1.2
More information about the fwts-devel
mailing list