ffprobe: fix potential NULL pointer dereference
authorStefano Sabatini <stefasab@gmail.com>
Tue, 6 Nov 2012 21:59:24 +0000 (22:59 +0100)
committerStefano Sabatini <stefasab@gmail.com>
Tue, 6 Nov 2012 21:59:24 +0000 (22:59 +0100)
Found by Coverity, should fix CID 733741.

ffprobe.c

index 28a05cb..748a4b9 100644 (file)
--- a/ffprobe.c
+++ b/ffprobe.c
@@ -1095,13 +1095,13 @@ static void json_print_section_header(WriterContext *wctx)
         json->indent_level++;
         if (section->flags & SECTION_FLAG_IS_ARRAY) {
             printf("\"%s\": [\n", buf.str);
-        } else if (!(parent_section->flags & SECTION_FLAG_IS_ARRAY)) {
+        } else if (parent_section && !(parent_section->flags & SECTION_FLAG_IS_ARRAY)) {
             printf("\"%s\": {%s", buf.str, json->item_start_end);
         } else {
             printf("{%s", json->item_start_end);
 
             /* this is required so the parser can distinguish between packets and frames */
-            if (parent_section->id == SECTION_ID_PACKETS_AND_FRAMES) {
+            if (parent_section && parent_section->id == SECTION_ID_PACKETS_AND_FRAMES) {
                 if (!json->compact)
                     JSON_INDENT();
                 printf("\"type\": \"%s\"%s", section->name, json->item_sep);