From 541496b65b366f846682c930aad4dbd66c97be89 Mon Sep 17 00:00:00 2001 From: Pau Espin Pedrol Date: Thu, 25 Apr 2019 19:22:07 +0200 Subject: lms: flush_recv: alloc buf on stack instead of heap No need to use the heap here since buffer is only used as a temporary trash. Using the stack is quicker. Change-Id: Iede8dc0903ee3865a52c8e2fd811bcde444fee33 --- Transceiver52M/device/lms/LMSDevice.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'Transceiver52M') diff --git a/Transceiver52M/device/lms/LMSDevice.cpp b/Transceiver52M/device/lms/LMSDevice.cpp index 05904e8..064d742 100644 --- a/Transceiver52M/device/lms/LMSDevice.cpp +++ b/Transceiver52M/device/lms/LMSDevice.cpp @@ -450,7 +450,7 @@ bool LMSDevice::flush_recv(size_t num_pkts) { #define CHUNK 625 int len = CHUNK * tx_sps; - short *buffer = new short[len * 2]; + short *buffer = (short*) alloca(sizeof(short) * len * 2); int rc; lms_stream_meta_t rx_metadata = {}; rx_metadata.flushPartialPacket = false; @@ -463,7 +463,6 @@ bool LMSDevice::flush_recv(size_t num_pkts) LOGC(DDEV, DEBUG) << "Flush: Recv buffer of len " << rc << " at " << std::hex << rx_metadata.timestamp; if (rc != len) { LOGC(DDEV, ALERT) << "LMS: Device receive timed out"; - delete[] buffer; return false; } @@ -471,7 +470,6 @@ bool LMSDevice::flush_recv(size_t num_pkts) } LOGC(DDEV, INFO) << "Initial timestamp " << ts_initial << std::endl; - delete[] buffer; return true; } -- cgit v1.2.3