diff --git a/apps/shared/store_parameter_controller.cpp b/apps/shared/store_parameter_controller.cpp index 50212fee2..97bfc3b55 100644 --- a/apps/shared/store_parameter_controller.cpp +++ b/apps/shared/store_parameter_controller.cpp @@ -82,10 +82,11 @@ bool StoreParameterController::handleEvent(Ion::Events::Event event) { double * contextBOtherColumn = (static_cast(context) + DoublePairStore::k_maxNumberOfPairs + b); return *contextAOtherColumn > *contextBOtherColumn; }; + double * seriesContext = m_store->data() + m_series * DoublePairStore::k_numberOfColumnsPerSeries * DoublePairStore::k_maxNumberOfPairs; if (m_xColumnSelected) { - Poincare::Helpers::Sort(swapRows, compareX, (m_store->data() + m_series), m_store->numberOfPairsOfSeries(m_series)); + Poincare::Helpers::Sort(swapRows, compareX, seriesContext, m_store->numberOfPairsOfSeries(m_series)); } else { - Poincare::Helpers::Sort(swapRows, compareY, (m_store->data() + m_series), m_store->numberOfPairsOfSeries(m_series)); + Poincare::Helpers::Sort(swapRows, compareY, seriesContext, m_store->numberOfPairsOfSeries(m_series)); } break; } diff --git a/apps/shared/store_parameter_controller.h b/apps/shared/store_parameter_controller.h index 3198b5239..efc8c6f12 100644 --- a/apps/shared/store_parameter_controller.h +++ b/apps/shared/store_parameter_controller.h @@ -13,7 +13,10 @@ class StoreParameterController : public ViewController, public ListViewDataSourc public: StoreParameterController(Responder * parentResponder, DoublePairStore * store, StoreController * storeController); void selectXColumn(bool xColumnSelected) { m_xColumnSelected = xColumnSelected; } - void selectSeries(int series) { m_series = series; } + void selectSeries(int series) { + assert(series >= 0 && series < DoublePairStore::k_numberOfSeries); + m_series = series; + } View * view() override { return &m_selectableTableView; } void willDisplayCellForIndex(HighlightCell * cell, int index) override; const char * title() override;