Fix uninitialized variables

This commit is contained in:
Jonas Kvinge 2021-06-20 23:53:28 +02:00
parent 3a3305c020
commit e1bf4347ab
42 changed files with 110 additions and 30 deletions

View File

@ -93,7 +93,7 @@ class RainbowAnalyzer : public Analyzer::Base {
private:
// "constants" that get initialized in the constructor
float band_scale_[kRainbowBands];
float band_scale_[kRainbowBands]{};
QPen colors_[kRainbowBands];
// Rainbow Nyancat & Dash
@ -104,7 +104,7 @@ class RainbowAnalyzer : public Analyzer::Base {
int frame_;
// The y positions of each point on the rainbow.
float history_[kHistorySize * kRainbowBands];
float history_[kHistorySize * kRainbowBands]{};
// A cache of the last frame's rainbow,
// so it can be used in the next frame.

View File

@ -55,6 +55,7 @@
CollectionBackend::CollectionBackend(QObject *parent) :
CollectionBackendInterface(parent),
db_(nullptr),
source_(Song::Source_Unknown),
original_thread_(nullptr) {
original_thread_ = thread();

View File

@ -93,6 +93,7 @@ CollectionView::CollectionView(QWidget *parent)
action_show_in_browser_(nullptr),
action_show_in_various_(nullptr),
action_no_show_in_various_(nullptr),
action_delete_files_(nullptr),
is_in_keyboard_search_(false),
delete_files_(false)
{

View File

@ -49,7 +49,8 @@
SavedGroupingManager::SavedGroupingManager(QWidget *parent)
: QDialog(parent),
ui_(new Ui_SavedGroupingManager),
model_(new QStandardItemModel(0, 4, this)) {
model_(new QStandardItemModel(0, 4, this)),
filter_(nullptr) {
ui_->setupUi(this);

View File

@ -54,6 +54,7 @@ ContextAlbum::ContextAlbum(QWidget *parent) :
timeline_fade_(new QTimeLine(1000, this)),
image_strawberry_(":/pictures/strawberry.png"),
image_original_(image_strawberry_),
pixmap_previous_opacity_(0),
prev_width_(width()) {
setObjectName("context-widget-album");

View File

@ -115,6 +115,17 @@ ContextAlbumsView::ContextAlbumsView(QWidget *parent)
: AutoExpandingTreeView(parent),
app_(nullptr),
context_menu_(nullptr),
load_(nullptr),
add_to_playlist_(nullptr),
add_to_playlist_enqueue_(nullptr),
open_in_new_playlist_(nullptr),
organize_(nullptr),
#ifndef Q_OS_WIN
copy_to_device_(nullptr),
#endif
edit_track_(nullptr),
edit_tracks_(nullptr),
show_in_browser_(nullptr),
is_in_keyboard_search_(false),
model_(nullptr)
{

View File

@ -128,6 +128,8 @@ ContextView::ContextView(QWidget *parent) :
spacer_bottom_(new QSpacerItem(20, 20, QSizePolicy::Expanding, QSizePolicy::Expanding)),
lyrics_tried_(false),
lyrics_id_(-1),
font_size_headline_(0),
font_size_normal_(0),
prev_width_(0)
{

View File

@ -49,6 +49,7 @@ SystemTrayIcon::SystemTrayIcon(QObject *parent)
action_stop_(nullptr),
action_stop_after_this_track_(nullptr),
action_mute_(nullptr),
action_love_(nullptr),
available_(false),
trayicon_progress_(false),
song_progress_(0) {

View File

@ -203,7 +203,7 @@ QString PrettySize(const quint64 bytes) {
quint64 FileSystemCapacity(const QString &path) {
#if defined(Q_OS_UNIX)
struct statvfs fs_info;
struct statvfs fs_info {};
if (statvfs(path.toLocal8Bit().constData(), &fs_info) == 0)
return quint64(fs_info.f_blocks) * quint64(fs_info.f_bsize);
#elif defined(Q_OS_WIN32)
@ -220,7 +220,7 @@ quint64 FileSystemCapacity(const QString &path) {
quint64 FileSystemFreeSpace(const QString &path) {
#if defined(Q_OS_UNIX)
struct statvfs fs_info;
struct statvfs fs_info{};
if (statvfs(path.toLocal8Bit().constData(), &fs_info) == 0)
return quint64(fs_info.f_bavail) * quint64(fs_info.f_bsize);
#elif defined(Q_OS_WIN32)

View File

@ -104,6 +104,9 @@ AlbumCoverManager::AlbumCoverManager(Application *app, CollectionBackend *collec
app_(app),
collection_backend_(collection_backend),
album_cover_choice_controller_(new AlbumCoverChoiceController(this)),
filter_all_(nullptr),
filter_with_covers_(nullptr),
filter_without_covers_(nullptr),
cover_fetcher_(new AlbumCoverFetcher(app_->cover_providers(), this)),
cover_searcher_(nullptr),
cover_export_(nullptr),

View File

@ -178,7 +178,16 @@ DeviceView::DeviceView(QWidget *parent)
sort_model_(nullptr),
properties_dialog_(new DeviceProperties),
device_menu_(nullptr),
collection_menu_(nullptr) {
eject_action_(nullptr),
forget_action_(nullptr),
properties_action_(nullptr),
collection_menu_(nullptr),
load_action_(nullptr),
add_to_playlist_action_(nullptr),
open_in_new_playlist_(nullptr),
organize_action_(nullptr),
delete_action_(nullptr) {
setItemDelegate(new DeviceItemDelegate(this));
SetExpandOnReset(false);
setAttribute(Qt::WA_MacShowFocusRect, false);

View File

@ -37,7 +37,7 @@
#include "about.h"
#include "ui_about.h"
About::About(QWidget *parent):QDialog(parent) {
About::About(QWidget *parent): QDialog(parent) {
ui_.setupUi(this);
setWindowFlags(this->windowFlags()|Qt::WindowStaysOnTopHint);

View File

@ -45,6 +45,8 @@ Engine::Base::Base(const EngineType type, QObject *parent)
beginning_nanosec_(0),
end_nanosec_(0),
scope_(kScopeSize),
buffering_(false),
equalizer_enabled_(false),
rg_enabled_(false),
rg_mode_(0),
rg_preamp_(0.0),
@ -60,6 +62,8 @@ Engine::Base::Base(const EngineType type, QObject *parent)
fadeout_pause_enabled_(false),
fadeout_duration_(2),
fadeout_duration_nanosec_(2 * kNsecPerSec),
fadeout_pause_duration_(0),
fadeout_pause_duration_nanosec_(0),
proxy_authentication_(false),
channels_enabled_(false),
channels_(0),

View File

@ -83,16 +83,21 @@ GstEngine::GstEngine(TaskManager *task_manager, QObject *parent)
buffering_task_id_(-1),
latest_buffer_(nullptr),
stereo_balancer_enabled_(false),
stereo_balance_(0.0f),
stereo_balance_(0.0F),
equalizer_enabled_(false),
equalizer_preamp_(0),
can_decode_success_(false),
can_decode_last_(false),
seek_timer_(new QTimer(this)),
waiting_to_seek_(false),
seek_pos_(0),
timer_id_(-1),
next_element_id_(0),
is_fading_out_to_pause_(false),
has_faded_out_(false),
scope_chunk_(0),
have_new_buffer_(false),
scope_chunks_(0),
discovery_finished_cb_id_(-1),
discovery_discovered_cb_id_(-1)
{

View File

@ -293,7 +293,7 @@ class GstEnginePipeline : public QObject {
QThreadPool set_state_threadpool_;
GstSegment last_playbin_segment_;
GstSegment last_playbin_segment_{};
bool unsupported_analyzer_;

View File

@ -56,7 +56,7 @@ class Equalizer : public QDialog {
bool operator !=(const Params &other) const;
int preamp;
int gain[kBands];
int gain[kBands]{};
};
bool is_equalizer_enabled() const;
@ -100,7 +100,7 @@ class Equalizer : public QDialog {
QString last_preset_;
EqualizerSlider *preamp_;
EqualizerSlider *gain_[kBands];
EqualizerSlider *gain_[kBands]{};
QMap<QString, Params> presets_;
};

View File

@ -39,6 +39,7 @@ GlobalShortcut *GlobalShortcut::initialized_ = nullptr;
QHash<QPair<quint32, quint32>, GlobalShortcut*> GlobalShortcut::internal_shortcuts_;
GlobalShortcut::GlobalShortcut(QObject *parent) : QObject(parent),
backend_(nullptr),
qt_key_(Qt::Key(0)),
qt_mods_(Qt::NoModifier),
native_key_(0),

View File

@ -35,7 +35,8 @@
#include "ui_globalshortcutgrabber.h"
GlobalShortcutGrabber::GlobalShortcutGrabber(QWidget *parent)
: QDialog(parent), ui_(new Ui::GlobalShortcutGrabber) {
: QDialog(parent), ui_(new Ui::GlobalShortcutGrabber), wrapper_(nullptr) {
ui_->setupUi(this);
modifier_keys_ << Qt::Key_Shift << Qt::Key_Control << Qt::Key_Meta << Qt::Key_Alt << Qt::Key_AltGr;

View File

@ -32,7 +32,9 @@
InternetCollectionViewContainer::InternetCollectionViewContainer(QWidget *parent) :
QWidget(parent),
ui_(new Ui_InternetCollectionViewContainer) {
ui_(new Ui_InternetCollectionViewContainer),
app_(nullptr),
service_(nullptr) {
ui_->setupUi(this);
view()->SetFilter(filter());

View File

@ -36,7 +36,7 @@
#include "playlist/playlistbackend.h"
InternetPlaylistItem::InternetPlaylistItem(const Song::Source source)
: PlaylistItem(source) {}
: PlaylistItem(source), source_(source) {}
InternetPlaylistItem::InternetPlaylistItem(const Song &metadata)
: PlaylistItem(metadata.source()),

View File

@ -43,6 +43,7 @@
PlaylistHeader::PlaylistHeader(Qt::Orientation orientation, PlaylistView *view, QWidget *parent)
: StretchHeaderView(orientation, parent),
view_(view),
menu_section_(0),
menu_(new QMenu(this)),
action_hide_(nullptr),
action_reset_(nullptr),

View File

@ -62,6 +62,11 @@ PlaylistTabBar::PlaylistTabBar(QWidget *parent)
manager_(nullptr),
menu_(new QMenu(this)),
menu_index_(-1),
new_(nullptr),
rename_(nullptr),
close_(nullptr),
save_(nullptr),
drag_hover_tab_(0),
suppress_current_changed_(false),
initialized_(false),
rename_editor_(new RenameTabLineEdit(this)) {

View File

@ -148,6 +148,7 @@ PlaylistView::PlaylistView(QWidget *parent)
set_initial_header_layout_(false),
header_state_loaded_(false),
header_state_restored_(false),
read_only_settings_(false),
previous_background_image_opacity_(0.0),
fade_animation_(new QTimeLine(1000, this)),
force_background_redraw_(false),
@ -1256,7 +1257,7 @@ void PlaylistView::ReloadSettings() {
void PlaylistView::SaveSettings() {
if (!header_state_loaded_) return;
if (!header_state_loaded_ || read_only_settings_) return;
QSettings s;
s.beginGroup(Playlist::kSettingsGroup);

View File

@ -108,7 +108,7 @@ class PlaylistView : public QTreeView {
void SetPlaylist(Playlist *playlist);
void RemoveSelected();
void SetReadOnlySettings(bool read_only) { read_only_settings_ = read_only; }
void SetReadOnlySettings(const bool read_only) { read_only_settings_ = read_only; }
Playlist *playlist() const { return playlist_; }
AppearanceSettingsPage::BackgroundImageType background_image_type() const { return background_image_type_; }
@ -237,10 +237,9 @@ class PlaylistView : public QTreeView {
bool background_initialized_;
bool set_initial_header_layout_;
bool read_only_settings_;
bool header_state_loaded_;
bool header_state_restored_;
bool header_state_readonly_;
bool read_only_settings_;
QImage background_image_;
QImage current_song_cover_art_;

View File

@ -98,6 +98,7 @@ QobuzService::QobuzService(Application *app, QObject *parent)
credential_id_(-1),
pending_search_id_(0),
next_pending_search_id_(1),
pending_search_type_(InternetSearchView::SearchType_Artists),
search_id_(0),
login_sent_(false),
login_attempts_(0)

View File

@ -42,7 +42,8 @@ LastFMScrobbler::LastFMScrobbler(Application *app, QObject *parent) : Scrobbling
cache_(new ScrobblerCache(kCacheFile, this)),
enabled_(false),
subscriber_(false),
submitted_(false) {
submitted_(false),
timestamp_(0) {
ReloadSettings();
LoadSession();

View File

@ -42,7 +42,8 @@ LibreFMScrobbler::LibreFMScrobbler(Application *app, QObject *parent) : Scrobbli
cache_(new ScrobblerCache(kCacheFile, this)),
enabled_(false),
subscriber_(false),
submitted_(false) {
submitted_(false),
timestamp_(0) {
ReloadSettings();
LoadSession();

View File

@ -75,6 +75,8 @@ ScrobblingAPI20::ScrobblingAPI20(const QString &name, const QString &settings_gr
app_(app),
server_(nullptr),
enabled_(false),
https_(false),
prefer_albumartist_(false),
subscriber_(false),
submitted_(false),
scrobbled_(false),

View File

@ -68,7 +68,8 @@ BackendSettingsPage::BackendSettingsPage(SettingsDialog *dialog, QWidget *parent
SettingsPage(dialog, parent),
ui_(new Ui_BackendSettingsPage),
configloaded_(false),
engineloaded_(false) {
engineloaded_(false),
enginetype_current_(Engine::None) {
ui_->setupUi(this);
setWindowIcon(IconLoader::Load("soundcard"));

View File

@ -71,7 +71,7 @@ public:
private:
Ui_ContextSettingsPage *ui_;
QCheckBox *checkboxes_[ContextSettingsOrder::NELEMS];
QCheckBox *checkboxes_[ContextSettingsOrder::NELEMS]{};
};
#endif // CONTEXTSETTINGSPAGE_H

View File

@ -124,6 +124,7 @@ SettingsDialog::SettingsDialog(Application *app, OSDBase *osd, QMainWindow *main
player_(app_->player()),
engine_(app_->player()->engine()),
model_(app_->collection_model()->directory_model()),
manager_(nullptr),
appearance_(app_->appearance()),
ui_(new Ui_SettingsDialog),
loading_settings_(false) {

View File

@ -120,6 +120,7 @@ class SettingsDialog : public QDialog {
private:
struct PageData {
PageData() : item_(nullptr), scroll_area_(nullptr), page_(nullptr) {}
QTreeWidgetItem *item_;
QScrollArea *scroll_area_;
SettingsPage *page_;

View File

@ -40,6 +40,10 @@ PlaylistGeneratorInserter::PlaylistGeneratorInserter(TaskManager *task_manager,
collection_(collection),
task_id_(-1),
destination_(nullptr),
row_(0),
play_now_(false),
enqueue_(false),
enqueue_next_(false),
is_dynamic_(false)
{}

View File

@ -39,8 +39,14 @@ class SmartPlaylistQueryWizardPlugin::SearchPage : public QWizardPage { // claz
public:
explicit SearchPage(QWidget *parent = nullptr)
: QWizardPage(parent), ui_(new Ui_SmartPlaylistQuerySearchPage) {
: QWizardPage(parent),
layout_(nullptr),
new_term_(nullptr),
preview_(nullptr),
ui_(new Ui_SmartPlaylistQuerySearchPage) {
ui_->setupUi(this);
}
bool isComplete() const override {

View File

@ -71,8 +71,8 @@ class SmartPlaylistQueryWizardPlugin : public SmartPlaylistWizardPlugin {
SmartPlaylistSearch MakeSearch() const;
SearchPage *search_page_;
std::unique_ptr<Ui_SmartPlaylistQuerySortPage> sort_ui_;
SearchPage *search_page_;
int previous_scrollarea_max_;
};

View File

@ -30,7 +30,7 @@
#include "smartplaylistsearch.h"
SmartPlaylistSearch::SmartPlaylistSearch() { Reset(); }
SmartPlaylistSearch::SmartPlaylistSearch() : search_type_(Type_And), terms_(0), sort_type_(Sort_Random), sort_field_(SmartPlaylistSearchTerm::Field_Title), limit_(-1), first_item_(0) { Reset(); }
SmartPlaylistSearch::SmartPlaylistSearch(const SearchType type, const TermList &terms, const SortType sort_type, const SmartPlaylistSearchTerm::Field sort_field, const int limit)
: search_type_(type),

View File

@ -37,8 +37,9 @@
SmartPlaylistSearchPreview::SmartPlaylistSearchPreview(QWidget *parent)
: QWidget(parent),
ui_(new Ui_SmartPlaylistSearchPreview),
model_(nullptr) {
ui_(new Ui_SmartPlaylistSearchPreview),
backend_(nullptr),
model_(nullptr) {
ui_->setupUi(this);

View File

@ -29,7 +29,7 @@
#include "smartplaylistsearchterm.h"
#include "playlist/playlist.h"
SmartPlaylistSearchTerm::SmartPlaylistSearchTerm() : field_(Field_Title), operator_(Op_Equals) {}
SmartPlaylistSearchTerm::SmartPlaylistSearchTerm() : field_(Field_Title), operator_(Op_Equals), date_(Date_Hour) {}
SmartPlaylistSearchTerm::SmartPlaylistSearchTerm(Field field, Operator op, const QVariant &value)
: field_(field), operator_(op), value_(value), date_(Date_Hour) {}

View File

@ -104,11 +104,13 @@ TidalService::TidalService(Application *app, QObject *parent)
songssearchlimit_(1),
fetchalbums_(true),
download_album_covers_(true),
stream_url_method_(TidalSettingsPage::StreamUrlMethod_StreamUrl),
album_explicit_(false),
expires_in_(0),
login_time_(0),
pending_search_id_(0),
next_pending_search_id_(1),
pending_search_type_(InternetSearchView::SearchType_Artists),
search_id_(0),
login_sent_(false),
login_attempts_(0)

View File

@ -33,13 +33,21 @@ class QHideEvent;
class QShowEvent;
BusyIndicator::BusyIndicator(const QString &text, QWidget *parent)
: QWidget(parent) {
: QWidget(parent),
movie_(nullptr),
label_(nullptr) {
Init(text);
}
BusyIndicator::BusyIndicator(QWidget *parent)
: QWidget(parent) {
: QWidget(parent),
movie_(nullptr),
label_(nullptr) {
Init(QString());
}
void BusyIndicator::Init(const QString &text) {

View File

@ -218,6 +218,7 @@ QSize PrettySlider::sizeHint() const {
VolumeSlider::VolumeSlider(QWidget *parent, const uint max)
: SliderSlider(Qt::Horizontal, parent, max),
anim_enter_(false),
anim_count_(0),
timer_anim_(new QTimer(this)),
pixmap_inset_(QPixmap(drawVolumePixmap())) {

View File

@ -44,6 +44,7 @@
namespace {
class CollectionModelTest : public ::testing::Test {
CollectionModelTest() : added_dir_(false) {}
protected:
void SetUp() override {
database_.reset(new MemoryDatabase(nullptr));