From e1bf4347ab925395a437df335d221c5ce4ba8565 Mon Sep 17 00:00:00 2001 From: Jonas Kvinge Date: Sun, 20 Jun 2021 23:53:28 +0200 Subject: [PATCH] Fix uninitialized variables --- src/analyzer/rainbowanalyzer.h | 4 ++-- src/collection/collectionbackend.cpp | 1 + src/collection/collectionview.cpp | 1 + src/collection/savedgroupingmanager.cpp | 3 ++- src/context/contextalbum.cpp | 1 + src/context/contextalbumsview.cpp | 11 +++++++++++ src/context/contextview.cpp | 2 ++ src/core/qtsystemtrayicon.cpp | 1 + src/core/utilities.cpp | 4 ++-- src/covermanager/albumcovermanager.cpp | 3 +++ src/device/deviceview.cpp | 11 ++++++++++- src/dialogs/about.cpp | 2 +- src/engine/enginebase.cpp | 4 ++++ src/engine/gstengine.cpp | 7 ++++++- src/engine/gstenginepipeline.h | 2 +- src/equalizer/equalizer.h | 4 ++-- src/globalshortcuts/globalshortcut.cpp | 1 + src/globalshortcuts/globalshortcutgrabber.cpp | 3 ++- src/internet/internetcollectionviewcontainer.cpp | 4 +++- src/internet/internetplaylistitem.cpp | 2 +- src/playlist/playlistheader.cpp | 1 + src/playlist/playlisttabbar.cpp | 5 +++++ src/playlist/playlistview.cpp | 3 ++- src/playlist/playlistview.h | 5 ++--- src/qobuz/qobuzservice.cpp | 1 + src/scrobbler/lastfmscrobbler.cpp | 3 ++- src/scrobbler/librefmscrobbler.cpp | 3 ++- src/scrobbler/scrobblingapi20.cpp | 2 ++ src/settings/backendsettingspage.cpp | 3 ++- src/settings/contextsettingspage.h | 2 +- src/settings/settingsdialog.cpp | 1 + src/settings/settingsdialog.h | 1 + src/smartplaylists/playlistgeneratorinserter.cpp | 4 ++++ .../smartplaylistquerywizardplugin.cpp | 8 +++++++- src/smartplaylists/smartplaylistquerywizardplugin.h | 2 +- src/smartplaylists/smartplaylistsearch.cpp | 2 +- src/smartplaylists/smartplaylistsearchpreview.cpp | 5 +++-- src/smartplaylists/smartplaylistsearchterm.cpp | 2 +- src/tidal/tidalservice.cpp | 2 ++ src/widgets/busyindicator.cpp | 12 ++++++++++-- src/widgets/volumeslider.cpp | 1 + tests/src/collectionmodel_test.cpp | 1 + 42 files changed, 110 insertions(+), 30 deletions(-) diff --git a/src/analyzer/rainbowanalyzer.h b/src/analyzer/rainbowanalyzer.h index 0d6c484b..686cfbd8 100644 --- a/src/analyzer/rainbowanalyzer.h +++ b/src/analyzer/rainbowanalyzer.h @@ -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. diff --git a/src/collection/collectionbackend.cpp b/src/collection/collectionbackend.cpp index 91cd9c6d..a994f330 100644 --- a/src/collection/collectionbackend.cpp +++ b/src/collection/collectionbackend.cpp @@ -55,6 +55,7 @@ CollectionBackend::CollectionBackend(QObject *parent) : CollectionBackendInterface(parent), db_(nullptr), + source_(Song::Source_Unknown), original_thread_(nullptr) { original_thread_ = thread(); diff --git a/src/collection/collectionview.cpp b/src/collection/collectionview.cpp index 74151ef3..74ed02a7 100644 --- a/src/collection/collectionview.cpp +++ b/src/collection/collectionview.cpp @@ -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) { diff --git a/src/collection/savedgroupingmanager.cpp b/src/collection/savedgroupingmanager.cpp index b5b33cd1..081c926d 100644 --- a/src/collection/savedgroupingmanager.cpp +++ b/src/collection/savedgroupingmanager.cpp @@ -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); diff --git a/src/context/contextalbum.cpp b/src/context/contextalbum.cpp index b613bdd6..6ef0975d 100644 --- a/src/context/contextalbum.cpp +++ b/src/context/contextalbum.cpp @@ -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"); diff --git a/src/context/contextalbumsview.cpp b/src/context/contextalbumsview.cpp index c5586ffb..e704e1d4 100644 --- a/src/context/contextalbumsview.cpp +++ b/src/context/contextalbumsview.cpp @@ -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) { diff --git a/src/context/contextview.cpp b/src/context/contextview.cpp index 5dff8c20..d1f170f1 100644 --- a/src/context/contextview.cpp +++ b/src/context/contextview.cpp @@ -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) { diff --git a/src/core/qtsystemtrayicon.cpp b/src/core/qtsystemtrayicon.cpp index ed19d4ea..ba136383 100644 --- a/src/core/qtsystemtrayicon.cpp +++ b/src/core/qtsystemtrayicon.cpp @@ -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) { diff --git a/src/core/utilities.cpp b/src/core/utilities.cpp index 653ad509..f74b16e8 100644 --- a/src/core/utilities.cpp +++ b/src/core/utilities.cpp @@ -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) diff --git a/src/covermanager/albumcovermanager.cpp b/src/covermanager/albumcovermanager.cpp index 0250bcc3..fc393342 100644 --- a/src/covermanager/albumcovermanager.cpp +++ b/src/covermanager/albumcovermanager.cpp @@ -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), diff --git a/src/device/deviceview.cpp b/src/device/deviceview.cpp index 28d129c1..b09d4dad 100644 --- a/src/device/deviceview.cpp +++ b/src/device/deviceview.cpp @@ -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); diff --git a/src/dialogs/about.cpp b/src/dialogs/about.cpp index 5e86e822..e9267794 100644 --- a/src/dialogs/about.cpp +++ b/src/dialogs/about.cpp @@ -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); diff --git a/src/engine/enginebase.cpp b/src/engine/enginebase.cpp index 30bba8ef..080a67c8 100644 --- a/src/engine/enginebase.cpp +++ b/src/engine/enginebase.cpp @@ -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), diff --git a/src/engine/gstengine.cpp b/src/engine/gstengine.cpp index 95e8a565..c0777fd9 100644 --- a/src/engine/gstengine.cpp +++ b/src/engine/gstengine.cpp @@ -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) { diff --git a/src/engine/gstenginepipeline.h b/src/engine/gstenginepipeline.h index 898f06c4..cbb6a3d9 100644 --- a/src/engine/gstenginepipeline.h +++ b/src/engine/gstenginepipeline.h @@ -293,7 +293,7 @@ class GstEnginePipeline : public QObject { QThreadPool set_state_threadpool_; - GstSegment last_playbin_segment_; + GstSegment last_playbin_segment_{}; bool unsupported_analyzer_; diff --git a/src/equalizer/equalizer.h b/src/equalizer/equalizer.h index 0c3001b3..9f4b498a 100644 --- a/src/equalizer/equalizer.h +++ b/src/equalizer/equalizer.h @@ -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 presets_; }; diff --git a/src/globalshortcuts/globalshortcut.cpp b/src/globalshortcuts/globalshortcut.cpp index bda8ec8b..081c8267 100644 --- a/src/globalshortcuts/globalshortcut.cpp +++ b/src/globalshortcuts/globalshortcut.cpp @@ -39,6 +39,7 @@ GlobalShortcut *GlobalShortcut::initialized_ = nullptr; QHash, GlobalShortcut*> GlobalShortcut::internal_shortcuts_; GlobalShortcut::GlobalShortcut(QObject *parent) : QObject(parent), + backend_(nullptr), qt_key_(Qt::Key(0)), qt_mods_(Qt::NoModifier), native_key_(0), diff --git a/src/globalshortcuts/globalshortcutgrabber.cpp b/src/globalshortcuts/globalshortcutgrabber.cpp index b1c54643..dc8ec6ca 100644 --- a/src/globalshortcuts/globalshortcutgrabber.cpp +++ b/src/globalshortcuts/globalshortcutgrabber.cpp @@ -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; diff --git a/src/internet/internetcollectionviewcontainer.cpp b/src/internet/internetcollectionviewcontainer.cpp index e5001fd9..cf13ef0d 100644 --- a/src/internet/internetcollectionviewcontainer.cpp +++ b/src/internet/internetcollectionviewcontainer.cpp @@ -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()); diff --git a/src/internet/internetplaylistitem.cpp b/src/internet/internetplaylistitem.cpp index 573722c3..7edf4de3 100644 --- a/src/internet/internetplaylistitem.cpp +++ b/src/internet/internetplaylistitem.cpp @@ -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()), diff --git a/src/playlist/playlistheader.cpp b/src/playlist/playlistheader.cpp index 5de0adb5..89769f6f 100644 --- a/src/playlist/playlistheader.cpp +++ b/src/playlist/playlistheader.cpp @@ -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), diff --git a/src/playlist/playlisttabbar.cpp b/src/playlist/playlisttabbar.cpp index 29b9694f..522f59a8 100644 --- a/src/playlist/playlisttabbar.cpp +++ b/src/playlist/playlisttabbar.cpp @@ -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)) { diff --git a/src/playlist/playlistview.cpp b/src/playlist/playlistview.cpp index d1ea7074..1238eab4 100644 --- a/src/playlist/playlistview.cpp +++ b/src/playlist/playlistview.cpp @@ -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); diff --git a/src/playlist/playlistview.h b/src/playlist/playlistview.h index 9dc2c065..fe544329 100644 --- a/src/playlist/playlistview.h +++ b/src/playlist/playlistview.h @@ -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_; diff --git a/src/qobuz/qobuzservice.cpp b/src/qobuz/qobuzservice.cpp index 566e5ecc..baf33dc3 100644 --- a/src/qobuz/qobuzservice.cpp +++ b/src/qobuz/qobuzservice.cpp @@ -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) diff --git a/src/scrobbler/lastfmscrobbler.cpp b/src/scrobbler/lastfmscrobbler.cpp index fd3b54b9..6af9c0a2 100644 --- a/src/scrobbler/lastfmscrobbler.cpp +++ b/src/scrobbler/lastfmscrobbler.cpp @@ -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(); diff --git a/src/scrobbler/librefmscrobbler.cpp b/src/scrobbler/librefmscrobbler.cpp index e4918fbb..3a5aed79 100644 --- a/src/scrobbler/librefmscrobbler.cpp +++ b/src/scrobbler/librefmscrobbler.cpp @@ -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(); diff --git a/src/scrobbler/scrobblingapi20.cpp b/src/scrobbler/scrobblingapi20.cpp index b86598ba..67da9e53 100644 --- a/src/scrobbler/scrobblingapi20.cpp +++ b/src/scrobbler/scrobblingapi20.cpp @@ -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), diff --git a/src/settings/backendsettingspage.cpp b/src/settings/backendsettingspage.cpp index 9f3a4abc..7ff19cbc 100644 --- a/src/settings/backendsettingspage.cpp +++ b/src/settings/backendsettingspage.cpp @@ -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")); diff --git a/src/settings/contextsettingspage.h b/src/settings/contextsettingspage.h index ce93fa8e..9a5c72e5 100644 --- a/src/settings/contextsettingspage.h +++ b/src/settings/contextsettingspage.h @@ -71,7 +71,7 @@ public: private: Ui_ContextSettingsPage *ui_; - QCheckBox *checkboxes_[ContextSettingsOrder::NELEMS]; + QCheckBox *checkboxes_[ContextSettingsOrder::NELEMS]{}; }; #endif // CONTEXTSETTINGSPAGE_H diff --git a/src/settings/settingsdialog.cpp b/src/settings/settingsdialog.cpp index 9bdb37ab..c8abdb2f 100644 --- a/src/settings/settingsdialog.cpp +++ b/src/settings/settingsdialog.cpp @@ -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) { diff --git a/src/settings/settingsdialog.h b/src/settings/settingsdialog.h index 3ec52a8d..aaf89f85 100644 --- a/src/settings/settingsdialog.h +++ b/src/settings/settingsdialog.h @@ -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_; diff --git a/src/smartplaylists/playlistgeneratorinserter.cpp b/src/smartplaylists/playlistgeneratorinserter.cpp index 2046b798..991841af 100644 --- a/src/smartplaylists/playlistgeneratorinserter.cpp +++ b/src/smartplaylists/playlistgeneratorinserter.cpp @@ -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) {} diff --git a/src/smartplaylists/smartplaylistquerywizardplugin.cpp b/src/smartplaylists/smartplaylistquerywizardplugin.cpp index 96bb9a98..3c2cd91d 100644 --- a/src/smartplaylists/smartplaylistquerywizardplugin.cpp +++ b/src/smartplaylists/smartplaylistquerywizardplugin.cpp @@ -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 { diff --git a/src/smartplaylists/smartplaylistquerywizardplugin.h b/src/smartplaylists/smartplaylistquerywizardplugin.h index fb87af06..a562b44f 100644 --- a/src/smartplaylists/smartplaylistquerywizardplugin.h +++ b/src/smartplaylists/smartplaylistquerywizardplugin.h @@ -71,8 +71,8 @@ class SmartPlaylistQueryWizardPlugin : public SmartPlaylistWizardPlugin { SmartPlaylistSearch MakeSearch() const; - SearchPage *search_page_; std::unique_ptr sort_ui_; + SearchPage *search_page_; int previous_scrollarea_max_; }; diff --git a/src/smartplaylists/smartplaylistsearch.cpp b/src/smartplaylists/smartplaylistsearch.cpp index a7f7e3b1..e1b8315f 100644 --- a/src/smartplaylists/smartplaylistsearch.cpp +++ b/src/smartplaylists/smartplaylistsearch.cpp @@ -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), diff --git a/src/smartplaylists/smartplaylistsearchpreview.cpp b/src/smartplaylists/smartplaylistsearchpreview.cpp index 3e87b06f..e9e7fae3 100644 --- a/src/smartplaylists/smartplaylistsearchpreview.cpp +++ b/src/smartplaylists/smartplaylistsearchpreview.cpp @@ -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); diff --git a/src/smartplaylists/smartplaylistsearchterm.cpp b/src/smartplaylists/smartplaylistsearchterm.cpp index bebcc394..fc221064 100644 --- a/src/smartplaylists/smartplaylistsearchterm.cpp +++ b/src/smartplaylists/smartplaylistsearchterm.cpp @@ -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) {} diff --git a/src/tidal/tidalservice.cpp b/src/tidal/tidalservice.cpp index 37f57ca4..bd587b3e 100644 --- a/src/tidal/tidalservice.cpp +++ b/src/tidal/tidalservice.cpp @@ -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) diff --git a/src/widgets/busyindicator.cpp b/src/widgets/busyindicator.cpp index c4726186..cdbbedfa 100644 --- a/src/widgets/busyindicator.cpp +++ b/src/widgets/busyindicator.cpp @@ -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) { diff --git a/src/widgets/volumeslider.cpp b/src/widgets/volumeslider.cpp index b06742ad..df383d9d 100644 --- a/src/widgets/volumeslider.cpp +++ b/src/widgets/volumeslider.cpp @@ -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())) { diff --git a/tests/src/collectionmodel_test.cpp b/tests/src/collectionmodel_test.cpp index 0f7484b4..8a600765 100644 --- a/tests/src/collectionmodel_test.cpp +++ b/tests/src/collectionmodel_test.cpp @@ -44,6 +44,7 @@ namespace { class CollectionModelTest : public ::testing::Test { + CollectionModelTest() : added_dir_(false) {} protected: void SetUp() override { database_.reset(new MemoryDatabase(nullptr));