vp8enc: Don't dereference NULL variable
authorEdward Hervey <edward@collabora.com>
Tue, 20 May 2014 06:23:06 +0000 (08:23 +0200)
committerEdward Hervey <edward@collabora.com>
Tue, 20 May 2014 06:24:48 +0000 (08:24 +0200)
CID #1139838

ext/vpx/gstvp8enc.c

index 5684e60..0271ffc 100644 (file)
@@ -911,18 +911,18 @@ gst_vp8_enc_set_property (GObject * object, guint prop_id,
 
       memset (&gst_vp8_enc->cfg.ts_target_bitrate, 0,
           sizeof (gst_vp8_enc->cfg.ts_target_bitrate));
-      if (va->n_values > VPX_TS_MAX_LAYERS) {
+      if (va == NULL) {
+        gst_vp8_enc->n_ts_target_bitrate = 0;
+      } else if (va->n_values > VPX_TS_MAX_LAYERS) {
         g_warning ("%s: Only %d layers allowed at maximum",
             GST_ELEMENT_NAME (gst_vp8_enc), VPX_TS_MAX_LAYERS);
-      } else if (va) {
+      } else {
         gint i;
 
         for (i = 0; i < va->n_values; i++)
           gst_vp8_enc->cfg.ts_target_bitrate[i] =
               g_value_get_int (g_value_array_get_nth (va, i));
         gst_vp8_enc->n_ts_target_bitrate = va->n_values;
-      } else {
-        gst_vp8_enc->n_ts_target_bitrate = 0;
       }
       global = TRUE;
       break;