From: Mikko Rapeli Date: Fri, 10 Aug 2012 12:17:06 +0000 (+0200) Subject: audioEnvelope.cpp: check for division by zero X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=0be5ff6006016f201442c8eaa2d68fac3ac41465;p=kdenlive audioEnvelope.cpp: check for division by zero Fixes Coverity CID 709287: Division or modulo by zero (DIVIDE_BY_ZERO) Call to "this->loadEnvelope()" set "this->m_envelopeMax" to 0. 182 loadEnvelope(); ... Division by expression "this->m_envelopeMax" which may be zero has undefined behavior 189 fy = m_envelope[x]/double(m_envelopeMax) * img.height(); --- diff --git a/src/lib/audio/audioEnvelope.cpp b/src/lib/audio/audioEnvelope.cpp index 00bda007..d4769593 100644 --- a/src/lib/audio/audioEnvelope.cpp +++ b/src/lib/audio/audioEnvelope.cpp @@ -184,6 +184,10 @@ QImage AudioEnvelope::drawEnvelope() QImage img(m_envelopeSize, 400, QImage::Format_ARGB32); img.fill(qRgb(255,255,255)); + + if (m_envelopeMax == 0) + return img; + double fy; for (int x = 0; x < img.width(); x++) { fy = m_envelope[x]/double(m_envelopeMax) * img.height();