From 76a8c80ef0bde753ac51e3d74a64a21bea8803d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gu=C3=B0ni=20M=C3=A1r=20Gilbert?= Date: Sun, 19 Mar 2023 11:01:31 +0000 Subject: [PATCH] Fix issue with size being wrong at runtime Change in memory: Flash: +40 bytes SRAM: 0 bytes --- Firmware/first_lay_cal.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Firmware/first_lay_cal.cpp b/Firmware/first_lay_cal.cpp index be92f0d20..0ad7ca5c9 100644 --- a/Firmware/first_lay_cal.cpp +++ b/Firmware/first_lay_cal.cpp @@ -34,10 +34,10 @@ static constexpr float spacing(float layer_height, float extrusion_width, float } // Common code extracted into one function to reduce code size -static void lay1cal_common_enqueue_loop(const char * const * cmd_sequence) { - for (uint8_t i = 0; i < (sizeof(cmd_sequence)/sizeof(cmd_sequence[0])); ++i) +static void lay1cal_common_enqueue_loop(const char * const * cmd_sequence, const uint8_t steps) { + for (uint8_t i = 0; i < steps; ++i) { - enquecommand_P(static_cast(pgm_read_ptr(&cmd_sequence[i]))); + enquecommand_P(static_cast(pgm_read_ptr(cmd_sequence + i))); } } @@ -60,7 +60,7 @@ void lay1cal_wait_preheat() zero_extrusion }; - lay1cal_common_enqueue_loop(preheat_cmd); + lay1cal_common_enqueue_loop(preheat_cmd, sizeof(preheat_cmd)/sizeof(preheat_cmd[0])); } //! @brief Load filament @@ -157,7 +157,7 @@ void lay1cal_before_meander() cmd_pre_meander_7, }; - lay1cal_common_enqueue_loop(cmd_pre_meander); + lay1cal_common_enqueue_loop(cmd_pre_meander, (sizeof(cmd_pre_meander)/sizeof(cmd_pre_meander[0]))); } //! @brief Print meander start @@ -243,7 +243,7 @@ void lay1cal_finish(bool mmu_enabled) cmd_cal_finish_5 }; - lay1cal_common_enqueue_loop(cmd_cal_finish); + lay1cal_common_enqueue_loop(cmd_cal_finish, (sizeof(cmd_cal_finish)/sizeof(cmd_cal_finish[0]))); if (mmu_enabled) enquecommand_P(MSG_M702_NO_LIFT); //unload from nozzle enquecommand_P(MSG_M84);// disable motors