소스 검색

libobs: Remove VLA in pulse monitoring backend

Shaolin 7 년 전
부모
커밋
226d4cadf5
1개의 변경된 파일3개의 추가작업 그리고 2개의 파일을 삭제
  1. 3 2
      libobs/audio-monitoring/pulse/pulseaudio-wrapper.c

+ 3 - 2
libobs/audio-monitoring/pulse/pulseaudio-wrapper.c

@@ -307,14 +307,15 @@ int_fast32_t pulseaudio_connect_playback(pa_stream *s, const char *name,
 		return -1;
 
 	size_t dev_len = strlen(name) - 8;
-	char device[dev_len];
+	char *device = bzalloc(dev_len + 1);
 	memcpy(device, name, dev_len);
-	device[dev_len] = '\0';
 
 	pulseaudio_lock();
 	int_fast32_t ret = pa_stream_connect_playback(s, device, attr, flags,
 			NULL, NULL);
 	pulseaudio_unlock();
+
+	bfree(device);
 	return ret;
 }