Commit Graph
138 Commits
Author SHA1 Message Date
Jon BenistonandClaude Opus 5 60db861797 Fix QString leak in the web API settings and report formatters
The generated SWG setters overwrite the string pointer without deleting
what is already there, and every webapiSettingsGet and webapiReportGet
calls init() first, which has allocated one. Each call therefore leaked a
QString per string field. Measured at 117 bytes per settings GET for the
Satellite Tracker, over 20,000 requests.

Assign in place when the pointer is already set, which is what these same
functions have always done for title and reverseAPIAddress. 394 sites
across webapiFormatChannelSettings, webapiFormatDeviceSettings,
webapiFormatFeatureSettings and the three report equivalents.

The webapiReverseSend* functions are deliberately left alone: they build a
fresh SWG object whose constructor leaves the pointers null, so passing a
new QString is correct there.

After the change the same measurement is flat, at 7 bytes per GET.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-11 16:54:42 +01:00
Robin Getz c170e03ddd rtl-sdr: Fix out-of-bounds tuner name lookup
Validate the tuner type index before accessing the tuner name table.
The previous check allowed an index equal to names.size(), which could
result in an out-of-range QStringList access.

Use a local integer value for the enum conversion and ensure only valid
indices are used when looking up tuner names.

pointed out by cppcheck: Access out of bounds

Signed-off-by: Robin Getz <rgetz503@gmail.com>
2026-08-01 19:52:09 -04:00
f4exb 63348eeee1 Make device title editable in the basic device settings. Fixes #2292 2026-01-28 03:05:39 +01:00
Jon Beniston 2538662c9b Fixes for Android 2024-10-21 17:11:55 +01:00
srcejon 5d1478d047 Formatting 2024-10-15 09:02:30 +01:00
srcejon 4ac29d2052 Remove debug. 2024-10-15 08:49:21 +01:00
srcejon acb278bbff RTLSDR: Apply driver settings in RTLSDRThread, to avoid blocking main thread. Add sync read for WebAssembly. 2024-10-15 08:40:08 +01:00
f4exb 37e06de0ed DeviceGUI: removed destroy method. Part of #2159 2024-09-07 21:50:42 +02:00
f4exb beaf2932ba RTLSDR: make sure start and stop are effective once only. PArt of #2159 2024-08-27 09:54:09 +02:00
Daniele Forsi 4241f01376 Fix typos in cpp files 2024-07-10 23:06:38 +02:00
Mykola Dvornik 15337cac66 Fix bug that prevents settings changes updates via reverse API
Most plugins that use reverse API to PATCH settings updates to remote
server only do so when `useReverseAPI` is toggled, but not when the
relevant settings are being updated. So lets fix the precondition to
use the `m_useReverseAPI` flag instead.
2024-04-14 18:58:12 +02:00
Daniele Forsi 8c3f7e3775 Remove unused includes and use more direct includes 2024-04-11 23:31:34 +02:00
srcejon 7cc9cd1bf1 Add instant replay 2023-11-22 14:28:35 +00:00
f4exb b6c4d10b62 Rewriting of copyright notices for plugins/samplesource. Part of #1893 2023-11-18 10:07:41 +01:00
Jon Beniston 28c566f84c Add tunerType to Web API report 2023-09-15 09:33:24 +01:00
Jon Beniston 2c636afa67 Add support for RTLSDRBlog V4 with HF upsampler 2023-08-26 14:25:03 +01:00
Jon Beniston 05914cc0ba Fix RTLSDR E4000 gain and bandwidth settings. Add tuner type to GUI. 2023-08-25 15:04:57 +01:00
Jon Beniston 7aea12e6fe On Android, list USB devices by VID/PID and open using file descriptor. 2022-12-22 11:04:12 +00:00
f4exb 66f34d5500 RTL-SDR: set max frequency limit to 2.4 GHz. Fixes #1497 2022-11-05 19:10:45 +01:00
f4exb b129349b02 RTL-SDR: Make settings assignments atomic. Part of #1329 2022-10-28 20:57:20 +02:00
Jon Beniston 929e0d34dc Adjust number of frequency digits depending whether transverter is enabled 2022-10-17 13:43:32 +01:00
f4exb 4111c967e9 Fixed some signal/slot connects. Removed unnecessary m_channelMessageQueue in ChannelAPI. Fixes #1185 2022-03-23 22:32:23 +01:00
f4exb 053e4a31cd Add label to SampleSinkFifo to mention controlling component in error messages 2022-03-18 21:53:53 +01:00
f4exb 09599e145e Added signals to SampleSinkFifo including samples timings. Implements #1143 and part of #1139 2022-03-15 22:21:06 +01:00
Edouard Griffiths 465944f671 Merge pull request #673 from kasper93/rtlsdr_sr
RTL-SDR: Adjust sample rate limits
2020-11-07 20:21:44 +01:00
f4exb e6e7ece46c Removed file recording function from device plugins 2020-08-09 00:47:06 +02:00
f4exb e62b0c7836 RTL-SDR bias tee. Implements #533 2020-06-27 10:47:50 +02:00
f4exb c4136c6a44 IQ swap: REST API: implementation in plugins 2020-06-23 19:56:50 +02:00
f4exb cc5d614f67 IQ swap: initial implementation in plugins 2020-06-23 19:29:58 +02:00
f4exb b317c0a59d REST API: device and channel actions: fixes to implementation 2020-03-10 15:31:38 +01:00
f4exb 07c11edb87 REST API device and channel actions: general implementation and RTLSDR and FileSource implementations 2020-03-10 08:33:15 +01:00
f4exb 246ff824af Corrected network manager process memory leaks (Rx side) 2019-11-12 18:46:45 +01:00
f4exb 7688f187bc REST API: config: use specialized ChannelWebAPIAdapter class similar to what has been done for devices 2019-08-05 00:10:56 +02:00
f4exb a078239685 REST API: config: GET (11). Support of the rest of devices 2019-08-04 20:24:44 +02:00
f4exb 06dea9b29f PVS-Studio analys fixes: core package serious issues 2019-06-14 16:58:09 +02:00
f4exb b01c4e2477 Device API: added a number of source and sink streams and update it from the plugins 2019-05-21 00:27:08 +02:00
f4exb 89e53cf179 Single DeviceAPI interface (1) 2019-05-08 22:11:53 +02:00
f4exb 54e46837dd REST API: changed binary tx parameter to ternary direction parameter (0: rx, 1: tx, 2: any) 2019-05-07 14:43:38 +02:00
f4exb 4bb0f4f51a Fixed incomplete copyright headers (2): plugins/samplesource 2019-04-11 06:57:41 +02:00
f4exb f4d0066edf RTL-SDR: fixed gain setting sequence (issue #321) 2019-04-03 23:01:29 +02:00
f4exb e2ac286458 Series of shifted decimators matching shifted interpolators. Applied to HackRF input 2019-04-02 01:10:03 +02:00
f4exb 546d8dca5e Reverse API originator information: implemented for start/stop in RTL-SDR and TestSource 2019-03-25 15:10:31 +01:00
f4exb 5cbadf9b3b Reverse API originator information implementation with RTL-SDR, Lime-SDR Tx, AM demod, AM mod examples 2019-03-25 01:15:27 +01:00
f4exb 46e92e41dc REST API: fixed reverse API address setting 2019-01-13 11:35:31 +01:00
f4exb 65e7519cd1 FCD: added decimation and center frequency shift 2019-01-05 00:31:16 +01:00
f4exb 67a33e3084 RTL-SDR input: normalize apply settings 2018-12-19 22:45:48 +01:00
f4exb 7c4b4bc795 Reverse API: format updates 2018-12-19 22:01:26 +01:00
f4exb c02b9a270a Reverse API: added content type when request has JSON body 2018-12-19 08:52:50 +01:00
f4exb 442f23ca91 Reverse API: RTL-SDR (4) and Test Source (2) input changes 2018-12-18 21:46:03 +01:00
f4exb 1dc8ca3a98 Reverse API: network reply error message enhancement. Added Q_OBJECT to test source and RTL-SDR input definitions to handle network reply correctly. 2018-12-18 06:14:18 +01:00