From e398029f74d6be188829032f5f4d8a8a9e2fb3f9 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Fri, 27 Nov 2020 17:57:40 +0100 Subject: Always initialize variables --- .clang-tidy | 1 - src/AlsaDriver.cpp | 26 +++++++++++++------------- src/Configuration.cpp | 8 ++++---- src/Configuration.hpp | 8 +++++++- src/JackDriver.cpp | 10 +++++----- src/Patchage.cpp | 22 ++++++++++++---------- src/PatchageModule.cpp | 2 +- 7 files changed, 42 insertions(+), 35 deletions(-) diff --git a/.clang-tidy b/.clang-tidy index 61b2364..f2fbea4 100644 --- a/.clang-tidy +++ b/.clang-tidy @@ -23,7 +23,6 @@ Checks: > -clang-diagnostic-unreachable-code-return, -cppcoreguidelines-avoid-non-const-global-variables, -cppcoreguidelines-explicit-virtual-functions, - -cppcoreguidelines-init-variables, -cppcoreguidelines-macro-usage, -cppcoreguidelines-owning-memory, -cppcoreguidelines-pro-bounds-array-to-pointer-decay, diff --git a/src/AlsaDriver.cpp b/src/AlsaDriver.cpp index 64b13c4..f7143b2 100644 --- a/src/AlsaDriver.cpp +++ b/src/AlsaDriver.cpp @@ -111,11 +111,11 @@ AlsaDriver::refresh() _ignored.clear(); _port_addrs.clear(); - snd_seq_client_info_t* cinfo; + snd_seq_client_info_t* cinfo = nullptr; snd_seq_client_info_alloca(&cinfo); snd_seq_client_info_set_client(cinfo, -1); - snd_seq_port_info_t* pinfo; + snd_seq_port_info_t* pinfo = nullptr; snd_seq_port_info_alloca(&pinfo); PatchageModule* parent = nullptr; @@ -154,7 +154,7 @@ AlsaDriver::refresh() continue; } - snd_seq_query_subscribe_t* subsinfo; + snd_seq_query_subscribe_t* subsinfo = nullptr; snd_seq_query_subscribe_alloca(&subsinfo); snd_seq_query_subscribe_set_root(subsinfo, addr); snd_seq_query_subscribe_set_index(subsinfo, 0); @@ -234,12 +234,12 @@ AlsaDriver::create_port_view_internal(Patchage* patchage, return; } - snd_seq_client_info_t* cinfo; + snd_seq_client_info_t* cinfo = nullptr; snd_seq_client_info_alloca(&cinfo); snd_seq_client_info_set_client(cinfo, addr.client); snd_seq_get_any_client_info(_seq, addr.client, cinfo); - snd_seq_port_info_t* pinfo; + snd_seq_port_info_t* pinfo = nullptr; snd_seq_port_info_alloca(&pinfo); snd_seq_port_info_set_client(pinfo, addr.client); snd_seq_port_info_set_port(pinfo, addr.port); @@ -336,12 +336,12 @@ AlsaDriver::ignore(const snd_seq_addr_t& addr, bool add) return false; } - snd_seq_client_info_t* cinfo; + snd_seq_client_info_t* cinfo = nullptr; snd_seq_client_info_alloca(&cinfo); snd_seq_client_info_set_client(cinfo, addr.client); snd_seq_get_any_client_info(_seq, addr.client, cinfo); - snd_seq_port_info_t* pinfo; + snd_seq_port_info_t* pinfo = nullptr; snd_seq_port_info_alloca(&pinfo); snd_seq_port_info_set_client(pinfo, addr.client); snd_seq_port_info_set_port(pinfo, addr.port); @@ -394,7 +394,7 @@ AlsaDriver::connect(PatchagePort* src_port, PatchagePort* dst_port) bool result = true; - snd_seq_port_subscribe_t* subs; + snd_seq_port_subscribe_t* subs = nullptr; snd_seq_port_subscribe_malloc(&subs); snd_seq_port_subscribe_set_sender(subs, &src.id.alsa_addr); snd_seq_port_subscribe_set_dest(subs, &dst.id.alsa_addr); @@ -445,7 +445,7 @@ AlsaDriver::disconnect(PatchagePort* src_port, PatchagePort* dst_port) const PortID src = s->second; const PortID dst = d->second; - snd_seq_port_subscribe_t* subs; + snd_seq_port_subscribe_t* subs = nullptr; snd_seq_port_subscribe_malloc(&subs); snd_seq_port_subscribe_set_sender(subs, &src.id.alsa_addr); snd_seq_port_subscribe_set_dest(subs, &dst.id.alsa_addr); @@ -477,7 +477,7 @@ AlsaDriver::disconnect(PatchagePort* src_port, PatchagePort* dst_port) bool AlsaDriver::create_refresh_port() { - snd_seq_port_info_t* port_info; + snd_seq_port_info_t* port_info = nullptr; snd_seq_port_info_alloca(&port_info); snd_seq_port_info_set_name(port_info, "System Announcement Reciever"); snd_seq_port_info_set_type(port_info, SND_SEQ_PORT_TYPE_APPLICATION); @@ -529,13 +529,13 @@ AlsaDriver::_refresh_main() int caps = 0; - snd_seq_client_info_t* cinfo; + snd_seq_client_info_t* cinfo = nullptr; snd_seq_client_info_alloca(&cinfo); - snd_seq_port_info_t* pinfo; + snd_seq_port_info_t* pinfo = nullptr; snd_seq_port_info_alloca(&pinfo); - snd_seq_event_t* ev; + snd_seq_event_t* ev = nullptr; while (snd_seq_event_input(_seq, &ev) > 0) { assert(ev); diff --git a/src/Configuration.cpp b/src/Configuration.cpp index 11c0d1a..d5df719 100644 --- a/src/Configuration.cpp +++ b/src/Configuration.cpp @@ -33,8 +33,8 @@ static const char* port_type_names[N_PORT_TYPES] = {"JACK_AUDIO", "JACK_CV"}; Configuration::Configuration() - : _window_location(0, 0) - , _window_size(640, 480) + : _window_location{0, 0} + , _window_size{640, 480} , _zoom(1.0) , _font_size(12.0) , _messages_height(0) @@ -212,7 +212,7 @@ Configuration::load() file >> _messages_height; } else if (key == "port_color") { std::string type_name; - uint32_t rgba; + uint32_t rgba = 0u; file >> type_name; file.ignore(1, '#'); file >> std::hex >> std::uppercase; @@ -237,7 +237,7 @@ Configuration::load() file.ignore(1, '\"'); std::getline(file, name, '\"'); - ModuleType type; + ModuleType type = Input; std::string type_str; file >> type_str; if (type_str == "input") { diff --git a/src/Configuration.hpp b/src/Configuration.hpp index 3eef1e7..27cd331 100644 --- a/src/Configuration.hpp +++ b/src/Configuration.hpp @@ -43,10 +43,16 @@ enum PortType struct Coord { - Coord(double x_ = 0, double y_ = 0) + Coord() + : x(0.0) + , y(0.0) + {} + + Coord(double x_, double y_) : x(x_) , y(y_) {} + double x; double y; }; diff --git a/src/JackDriver.cpp b/src/JackDriver.cpp index 7f3402c..556ef73 100644 --- a/src/JackDriver.cpp +++ b/src/JackDriver.cpp @@ -218,8 +218,8 @@ JackDriver::create_port(PatchageModule& parent, jack_port_t* port, PortID id) } #endif - const char* const type_str = jack_port_type(port); - PortType port_type; + const char* const type_str = jack_port_type(port); + PortType port_type = JACK_AUDIO; if (!strcmp(type_str, JACK_DEFAULT_AUDIO_TYPE)) { port_type = JACK_AUDIO; #ifdef HAVE_JACK_METADATA @@ -269,8 +269,8 @@ JackDriver::shutdown() void JackDriver::refresh() { - const char** ports; - jack_port_t* port; + const char** ports = nullptr; + jack_port_t* port = nullptr; // Jack can take _client away from us at any time throughout here :/ // Shortest locks possible is the best solution I can figure out @@ -293,7 +293,7 @@ JackDriver::refresh() std::string port1_name; std::string client2_name; std::string port2_name; - size_t colon; + size_t colon = std::string::npos; // Add all ports for (int i = 0; ports[i]; ++i) { diff --git a/src/Patchage.cpp b/src/Patchage.cpp index 8f9f78d..1605325 100644 --- a/src/Patchage.cpp +++ b/src/Patchage.cpp @@ -558,17 +558,16 @@ Patchage::refresh() void Patchage::store_window_location() { - int loc_x, loc_y, size_x, size_y; + int loc_x = 0; + int loc_y = 0; _main_win->get_position(loc_x, loc_y); + + int size_x = 0; + int size_y = 0; _main_win->get_size(size_x, size_y); - Coord window_location; - window_location.x = loc_x; - window_location.y = loc_y; - Coord window_size; - window_size.x = size_x; - window_size.y = size_y; - _conf->set_window_location(window_location); - _conf->set_window_size(window_size); + + _conf->set_window_location({double(loc_x), double(loc_y)}); + _conf->set_window_size({double(size_x), double(size_y)}); } void @@ -1045,14 +1044,17 @@ Patchage::on_view_messages() if (_menu_view_messages->get_active()) { Glib::RefPtr buffer = _status_text->get_buffer(); if (!_pane_initialized) { - int y, line_height; + int y = 0; + int line_height = 0; _status_text->get_line_yrange(buffer->begin(), y, line_height); + const int pad = _status_text->get_pixels_inside_wrap(); const int max_pos = _main_paned->get_allocation().get_height(); const int min_height = (line_height + 2 * pad); const int conf_height = _conf->get_messages_height(); _main_paned->set_position(max_pos - std::max(conf_height, min_height)); + _pane_initialized = true; } diff --git a/src/PatchageModule.cpp b/src/PatchageModule.cpp index 8c68625..d955900 100644 --- a/src/PatchageModule.cpp +++ b/src/PatchageModule.cpp @@ -117,7 +117,7 @@ PatchageModule::load_location() void PatchageModule::store_location(double x, double y) { - Coord loc(get_x(), get_y()); + const Coord loc{get_x(), get_y()}; _app->conf()->set_module_location(_name, _type, loc); } -- cgit v1.2.1