]> git.sesse.net Git - vlc/blobdiff - modules/visualization/visual/effects.c
visual: don't crash on empty buffers
[vlc] / modules / visualization / visual / effects.c
index ca2e1bd7c91415f49c0f1e496bcd55101047a51a..c043cb07a5dcb469df2da375ab8c0425cdcfee70 100644 (file)
@@ -119,6 +119,11 @@ static int spectrum_Run(visual_effect_t * p_effect, vlc_object_t *p_aout,
     int16_t  *p_buffs;                    /* int16_t converted buffer */
     int16_t  *p_s16_buff;                 /* int16_t converted buffer */
 
+    if (!p_buffer->i_nb_samples) {
+        msg_Err(p_aout, "no samples yet");
+        return -1;
+    }
+
     /* Create p_data if needed */
     if( !p_data )
     {
@@ -451,6 +456,11 @@ static int spectrometer_Run(visual_effect_t * p_effect, vlc_object_t *p_aout,
     int16_t  *p_buffs;                    /* int16_t converted buffer */
     int16_t  *p_s16_buff;                /* int16_t converted buffer */
 
+    if (!p_buffer->i_nb_samples) {
+        msg_Err(p_aout, "no samples yet");
+        return -1;
+    }
+
     /* Create the data struct if needed */
     spectrometer_data *p_data = p_effect->p_data;
     if( !p_data )