diff --git a/src/gui/src/ScreenSetupModel.cpp b/src/gui/src/ScreenSetupModel.cpp index 6a4830351..39e217b5a 100644 --- a/src/gui/src/ScreenSetupModel.cpp +++ b/src/gui/src/ScreenSetupModel.cpp @@ -33,13 +33,18 @@ ScreenSetupModel::ScreenSetupModel( // bound rows and columns to prevent multiply overflow. // this is unlikely to happen, as the grid size is only 3x9. - assert(m_NumColumns < 100 && m_NumRows < 100); - - if (m_NumColumns * m_NumRows > screens.size()) + if (m_NumColumns > 100 || m_NumRows > 100) { qFatal( - "Not enough elements (%lld) in screens QList for %d columns and %d " - "rows", - screens.size(), m_NumColumns, m_NumRows); + "Grid size out of bounds: %d columns x %d rows", m_NumColumns, + m_NumRows); + return; + } + + if (m_NumColumns * m_NumRows > screens.size()) { + qFatal( + "Scrren list (%lld) too small for %d columns x %d rows", screens.size(), + m_NumColumns, m_NumRows); + } } QVariant ScreenSetupModel::data(const QModelIndex &index, int role) const {