all repos — mgba @ b0e12c3392f4fdc2635f5aaed970edfb98ef6313

mGBA Game Boy Advance Emulator

Qt: Fix a load of uninitialized members
Jeffrey Pfau jeffrey@endrift.com
Wed, 22 Apr 2015 20:18:54 -0700
commit

b0e12c3392f4fdc2635f5aaed970edfb98ef6313

parent

46d31796df3e6aac3ce965262a779f6f715553b9

M src/platform/qt/AudioDevice.cppsrc/platform/qt/AudioDevice.cpp

@@ -17,12 +17,13 @@ AudioDevice::AudioDevice(QObject* parent)

: QIODevice(parent) , m_context(nullptr) , m_drift(0) + , m_ratio(1.f) { setOpenMode(ReadOnly); } void AudioDevice::setFormat(const QAudioFormat& format) { - if (!GBAThreadIsActive(m_context)) { + if (!m_context || !GBAThreadIsActive(m_context)) { return; } #if RESAMPLE_LIBRARY == RESAMPLE_NN
M src/platform/qt/AudioProcessor.cppsrc/platform/qt/AudioProcessor.cpp

@@ -48,6 +48,8 @@ }

AudioProcessor::AudioProcessor(QObject* parent) : QObject(parent) + , m_context(nullptr) + , m_samples(GBA_AUDIO_SAMPLES) { }
M src/platform/qt/AudioProcessorQt.cppsrc/platform/qt/AudioProcessorQt.cpp

@@ -33,6 +33,10 @@ }

} void AudioProcessorQt::start() { + if (!input()) { + return; + } + if (!m_device) { m_device = new AudioDevice(this); }
M src/platform/qt/AudioProcessorSDL.cppsrc/platform/qt/AudioProcessorSDL.cpp

@@ -22,6 +22,10 @@ GBASDLDeinitAudio(&m_audio);

} void AudioProcessorSDL::start() { + if (!input()) { + return; + } + if (m_audio.thread) { GBASDLResumeAudio(&m_audio); } else {
M src/platform/qt/Display.cppsrc/platform/qt/Display.cpp

@@ -32,6 +32,9 @@ Display::Display(QGLFormat format, QWidget* parent)

: QGLWidget(format, parent) , m_painter(nullptr) , m_started(false) + , m_lockAspectRatio(false) + , m_filter(false) + , m_context(nullptr) { setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding); setMinimumSize(VIDEO_HORIZONTAL_PIXELS, VIDEO_VERTICAL_PIXELS);

@@ -145,6 +148,7 @@ Painter::Painter(Display* parent)

: m_gl(parent) , m_lockAspectRatio(false) , m_filter(false) + , m_context(nullptr) { m_size = parent->size(); }
M src/platform/qt/KeyEditor.cppsrc/platform/qt/KeyEditor.cpp

@@ -15,6 +15,7 @@

KeyEditor::KeyEditor(QWidget* parent) : QLineEdit(parent) , m_direction(GamepadAxisEvent::NEUTRAL) + , m_button(false) { setAlignment(Qt::AlignCenter); }
M src/platform/qt/LoadSaveState.hsrc/platform/qt/LoadSaveState.h

@@ -47,7 +47,6 @@ void triggerState(int slot);

Ui::LoadSaveState m_ui; GameController* m_controller; - InputController* m_inputController; SavestateButton* m_slots[NUM_SLOTS]; LoadSave m_mode;
M src/platform/qt/LogView.cppsrc/platform/qt/LogView.cpp

@@ -12,6 +12,9 @@ using namespace QGBA;

LogView::LogView(QWidget* parent) : QWidget(parent) + , m_logLevel(0) + , m_lines(0) + , m_lineLimit(DEFAULT_LINE_LIMIT) { m_ui.setupUi(this); connect(m_ui.levelDebug, SIGNAL(toggled(bool)), this, SLOT(setLevelDebug(bool)));

@@ -24,8 +27,6 @@ connect(m_ui.levelGameError, SIGNAL(toggled(bool)), this, SLOT(setLevelGameError(bool)));

connect(m_ui.levelSWI, SIGNAL(toggled(bool)), this, SLOT(setLevelSWI(bool))); connect(m_ui.clear, SIGNAL(clicked()), this, SLOT(clear())); connect(m_ui.maxLines, SIGNAL(valueChanged(int)), this, SLOT(setMaxLines(int))); - m_logLevel = 0; - m_lines = 0; m_ui.maxLines->setValue(DEFAULT_LINE_LIMIT); }