uhd/host/examples
Zsolt Gaál ddc67b681e examples: Fix cleanup waterfall memory leak in rx_samples_c
This PR fixes a bug in the goto cleanup waterfall within rx_samples_c.

Previously, the free_rx_streamer label was positioned above the
free_rx_metadata label. Because C executes sequentially, if an error
occurred after the metadata was successfully created (for example,
during uhd_usrp_set_rx_rate or uhd_usrp_get_rx_stream), the code would
jump to free_rx_metadata, fall through to free_usrp, and exit. It
completely skipped free_rx_streamer, silently leaking the streamer
memory and leaving the hardware handles dangling.

Changes:

- Reordered the cleanup labels to strictly follow the reverse-chronological
  order of resource creation (Metadata -> Streamer -> USRP).
- Updated the corresponding EXECUTE_OR_GOTO jump targets for the stream
  setup functions to match the new waterfall order.
2026-07-28 09:23:21 +02:00
..
extension_example host/firmware/tools: Update minimum CMake versions 2025-09-24 13:48:07 +02:00
getopt uhd: mpm: update all license header w/ "-or-later" 2019-03-08 00:43:07 +01:00
init_usrp examples: init_usrp: Make use of UHD::uhd target 2025-09-24 11:35:24 +02:00
python host: examples: correct port configuration in one example 2026-07-01 09:58:11 +02:00
rfnoc-gain examples: rfnoc-gain: Remove IN_TREE_IP option 2026-07-20 09:15:44 +02:00
ascii_art_dft.hpp Apply clang-formatting to all C/C++ files 2023-08-07 15:35:56 -05:00
benchmark_rate.cpp examples: Remove boost::thread_group usage 2026-04-24 10:42:40 +02:00
CMakeLists.txt examples: Complex gain example using multi_usrp 2025-12-03 16:41:01 +01:00
gpio.cpp examples: gpio: fix nr. of loopback bits 2025-12-17 13:45:14 +01:00
latency_test.cpp example: cpp: Enhanced documentation for selected examples 2025-12-04 09:06:22 +01:00
rfnoc_nullsource_ce_rx.cpp example: cpp: Enhanced documentation for rfnoc_* examples 2025-11-18 13:26:26 +01:00
rfnoc_radio_loopback.cpp example: cpp: Enhanced documentation for rfnoc_* examples 2025-11-18 13:26:26 +01:00
rfnoc_replay_samples_from_file.cpp example: cpp: Enhanced documentation for rfnoc_* examples 2025-11-18 13:26:26 +01:00
rfnoc_rx_to_file.cpp example: cpp: Enhanced documentation for rfnoc_* examples 2025-11-18 13:26:26 +01:00
rx_ascii_art_dft.cpp example: cpp: Enhanced documentation for rx_* examples 2025-11-18 13:26:05 +01:00
rx_multi_samples.cpp example: cpp: Enhanced documentation for rx_* examples 2025-11-18 13:26:05 +01:00
rx_samples_c.c examples: Fix cleanup waterfall memory leak in rx_samples_c 2026-07-28 09:23:21 +02:00
rx_samples_to_file.cpp example: cpp: Enhanced documentation for rx_* examples 2025-11-18 13:26:05 +01:00
rx_samples_to_udp.cpp example: cpp: Enhanced documentation for rx_* examples 2025-11-18 13:26:05 +01:00
rx_timed_samples.cpp example: cpp: Enhanced documentation for rx_* examples 2025-11-18 13:26:05 +01:00
spi.cpp examples: Remove unused constants 2024-10-29 17:59:42 +01:00
sync_to_gps.cpp Apply clang-formatting to all C/C++ files 2023-08-07 15:35:56 -05:00
test_clock_synch.cpp examples: Remove boost::thread_group usage 2026-04-24 10:42:40 +02:00
test_dboard_coercion.cpp uhd: Remove more superfluous includes 2026-06-10 08:34:02 +02:00
test_messages.cpp example: cpp: Enhanced documentation for selected examples 2025-12-04 09:06:22 +01:00
test_pps_input.cpp examples: test_pps_input: Also test for ref_locked on E31x 2019-11-21 15:02:03 -08:00
test_timed_commands.cpp example: cpp: Enhanced documentation for selected examples 2025-12-04 09:06:22 +01:00
twinrx_freq_hopping.cpp examples: Deboostify twinrx_freq_hopping 2026-06-10 10:05:25 +02:00
tx_bursts.cpp uhd: Remove more superfluous includes 2026-06-10 08:34:02 +02:00
tx_samples_c.c examples: Fix calloc() call in tx_samples_c.c 2025-03-17 18:39:03 +01:00
tx_samples_from_file.cpp uhd: Remove usage of boost::lexical_cast 2026-03-23 09:58:28 +01:00
tx_timed_samples.cpp uhd: Remove more superfluous includes 2026-06-10 08:34:02 +02:00
tx_waveforms.cpp example: Enhanced tx_waveform.cpp documentation 2025-10-06 11:34:58 +02:00
txrx_complex_gain.cpp doc: Fix documentation for Doxygen 2026-05-07 14:58:01 +02:00
txrx_loopback_to_file.cpp doc: Fix documentation for Doxygen 2026-05-07 14:58:01 +02:00
usrp_list_sensors.cpp uhd: mpm: apply clang-format to all files 2019-01-16 11:40:23 -08:00
wavetable.hpp Apply clang-formatting to all C/C++ files 2023-08-07 15:35:56 -05:00