From fe684f7a1d9933d20ee4d3f087807175ddc5e6a1 Mon Sep 17 00:00:00 2001 From: Thomas Kolb Date: Sat, 20 Jul 2024 01:03:31 +0200 Subject: [PATCH] Fixed stack overflow in transmit() --- impl/src/main.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/impl/src/main.c b/impl/src/main.c index 4ed38f6..c6096c9 100644 --- a/impl/src/main.c +++ b/impl/src/main.c @@ -142,12 +142,14 @@ void cb_rx(rx_evt_t evt, const struct layer1_rx_s *rx, uint8_t *packet_data, siz static result_t transmit(sdr_ctx_t *sdr, const float complex *samples, size_t len) { size_t to_transmit_rf = len * SDR_OVERSAMPLING; - float complex rf_samples[to_transmit_rf]; + float complex *rf_samples = malloc(sizeof(*rf_samples) * to_transmit_rf); RESULT_CHECK(sdr_baseband_to_rf(sdr, samples, len, rf_samples, &to_transmit_rf)); result_t result = sdr_transmit(sdr, rf_samples, to_transmit_rf, 100000); + free(rf_samples); + fprintf(stderr, "t"); return result; }