n the Configuration.cpp code,
uninitialized variables of enum types are copied,
resulting in undefined behavior at runtime,
as discovered by ubsan
See attached markdown
In the Configuration.cpp code,
uninitialized variables of enum types are copied,
resulting in undefined behavior at runtime,
as discovered by ubsan.
Here's a possible fix:
```
diff --git a/Configuration.cpp b/Configuration.cpp
index bad4e4f62..f060317e3 100644
--- a/Configuration.cpp
+++ b/Configuration.cpp
@@ -1212,6 +1212,11 @@ Configuration::impl::impl (Configuration * self, QNetworkAccessManager * network
// saved in settings
, udp_server_name_edited_ {false}
, dns_lookup_id_ {-1}
+
+ , audio_input_channel_ {AudioDevice::Mono}
+ , next_audio_input_channel_ {AudioDevice::Mono}
+ , audio_output_channel_ {AudioDevice::Mono}
+ , next_audio_output_channel_ {AudioDevice::Mono}
{
ui_->setupUi (this);
```
_______________________________________________
wsjt-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wsjt-devel