From 11467fa326896934a299712810b74aef6a373c6f Mon Sep 17 00:00:00 2001 From: Berthold Stoeger Date: Thu, 27 Jun 2019 07:42:09 +0200 Subject: Core: dynamically allocate the result of get_gas_used() get_gas_used() returns the volume of used gases. Currently, an array with MAX_CYLINDERS is passed in. If we want to make the number of cylinders dynamic, the function must use an arbitrarilly sized array. Therefore, return a dynamically allocated array and free it in the caller. Signed-off-by: Berthold Stoeger --- desktop-widgets/tab-widgets/TabDiveInformation.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'desktop-widgets/tab-widgets') diff --git a/desktop-widgets/tab-widgets/TabDiveInformation.cpp b/desktop-widgets/tab-widgets/TabDiveInformation.cpp index 273bf4525..e6bb7c581 100644 --- a/desktop-widgets/tab-widgets/TabDiveInformation.cpp +++ b/desktop-widgets/tab-widgets/TabDiveInformation.cpp @@ -53,8 +53,7 @@ void TabDiveInformation::updateProfile() ui->maximumDepthText->setText(get_depth_string(current_dive->maxdepth, true)); ui->averageDepthText->setText(get_depth_string(current_dive->meandepth, true)); - volume_t gases[MAX_CYLINDERS] = {}; - get_gas_used(current_dive, gases); + volume_t *gases = get_gas_used(current_dive); QString volumes; int mean[MAX_CYLINDERS], duration[MAX_CYLINDERS]; per_cylinder_mean_depth(current_dive, select_dc(current_dive), mean, duration); @@ -76,6 +75,7 @@ void TabDiveInformation::updateProfile() SACs.append(get_volume_string(sac, true).append(tr("/min"))); } } + free(gases); ui->gasUsedText->setText(volumes); ui->oxygenHeliumText->setText(gaslist); -- cgit v1.2.3-70-g09d2