diff options
author | RJ Ryan <rryan@mixxx.org> | 2014-12-03 18:12:13 -0500 |
---|---|---|
committer | RJ Ryan <rryan@mixxx.org> | 2014-12-03 19:02:51 -0500 |
commit | 4ca69a48692c37d112d0084fa95c4daec67660b2 (patch) | |
tree | 19227635012b479055ceea39b1df1a0d7aeed965 /src/waveform/renderers/glwaveformrenderersimplesignal.cpp | |
parent | a969befe5b2495162d3b20356db5c8bc8692f2a4 (diff) |
Fix waveform concurrency issues. Potentially fixes Bug #1383404.
* Use const shared pointers for waveforms.
* Move all std::vector sizing operations to the Waveform constructor. No
vector state is allowed to change after the constructor finishes.
* Clarify comments.
* Remove waveform mutex usage in WOverview variants.
* Use the track's waveform pointer to atomically swap the waveform
rather than mutating the waveform in place.
* Remove unused code.
Diffstat (limited to 'src/waveform/renderers/glwaveformrenderersimplesignal.cpp')
-rw-r--r-- | src/waveform/renderers/glwaveformrenderersimplesignal.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/waveform/renderers/glwaveformrenderersimplesignal.cpp b/src/waveform/renderers/glwaveformrenderersimplesignal.cpp index 197a124035..2b39e7842b 100644 --- a/src/waveform/renderers/glwaveformrenderersimplesignal.cpp +++ b/src/waveform/renderers/glwaveformrenderersimplesignal.cpp @@ -32,8 +32,8 @@ void GLWaveformRendererSimpleSignal::draw(QPainter* painter, QPaintEvent* /*even return; } - const Waveform* waveform = pTrack->getWaveform(); - if (waveform == NULL) { + ConstWaveformPointer waveform = pTrack->getWaveform(); + if (waveform.isNull()) { return; } |