File tree Expand file tree Collapse file tree 1 file changed +8
-2
lines changed
Expand file tree Collapse file tree 1 file changed +8
-2
lines changed Original file line number Diff line number Diff line change @@ -2887,11 +2887,17 @@ spectrum_audio_listener (void *ctx, const ddb_audio_data_t *data) {
28872887 // copy the input data for later consumption
28882888 if (w -> input_data .nframes != data -> nframes || w -> input_data .fmt -> channels != data -> fmt -> channels ) {
28892889 free (w -> input_data .data );
2890- w -> input_data .data = malloc (data -> nframes * data -> fmt -> channels * sizeof (float ));
2890+ w -> input_data .data = NULL ;
2891+
2892+ if (data -> nframes > 0 ) {
2893+ w -> input_data .data = malloc (data -> nframes * data -> fmt -> channels * sizeof (float ));
2894+ }
28912895 w -> input_data .nframes = data -> nframes ;
28922896 }
28932897 memcpy (w -> input_data .fmt , data -> fmt , sizeof (ddb_waveformat_t ));
2894- memcpy (w -> input_data .data , data -> data , data -> nframes * data -> fmt -> channels * sizeof (float ));
2898+ if (w -> input_data .data != NULL && data -> nframes > 0 ) {
2899+ memcpy (w -> input_data .data , data -> data , data -> nframes * data -> fmt -> channels * sizeof (float ));
2900+ }
28952901 deadbeef -> mutex_unlock (w -> mutex );
28962902}
28972903
You can’t perform that action at this time.
0 commit comments