summaryrefslogtreecommitdiffstats
path: root/src/charts/domain/logxydomain.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/charts/domain/logxydomain.cpp')
-rw-r--r--src/charts/domain/logxydomain.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/charts/domain/logxydomain.cpp b/src/charts/domain/logxydomain.cpp
index fb77656c..aedfb7f3 100644
--- a/src/charts/domain/logxydomain.cpp
+++ b/src/charts/domain/logxydomain.cpp
@@ -106,9 +106,9 @@ void LogXYDomain::zoomOut(const QRectF &rect)
const qreal factorX = m_size.width() / fixedRect.width();
qreal logLeftX = m_logLeftX + (m_logRightX - m_logLeftX) / 2 * (1 - factorX);
- qreal logRIghtX = m_logLeftX + (m_logRightX - m_logLeftX) / 2 * (1 + factorX);
+ qreal logRightX = m_logLeftX + (m_logRightX - m_logLeftX) / 2 * (1 + factorX);
qreal leftX = qPow(m_logBaseX, logLeftX);
- qreal rightX = qPow(m_logBaseX, logRIghtX);
+ qreal rightX = qPow(m_logBaseX, logRightX);
qreal minX = leftX < rightX ? leftX : rightX;
qreal maxX = leftX > rightX ? leftX : rightX;
@@ -119,6 +119,12 @@ void LogXYDomain::zoomOut(const QRectF &rect)
maxY = minY + dy * fixedRect.bottom();
minY = maxY - dy * m_size.height();
+ if (logRightX > m_size.width())
+ return;
+
+ if (qIsInf(maxX))
+ return;
+
setRange(minX, maxX, minY, maxY);
}