From b0267573b0838ab42116ce03df23e8e0b7019233 Mon Sep 17 00:00:00 2001 From: Raphael Coeffic Date: Sun, 29 Oct 2023 02:23:14 +0100 Subject: [PATCH] fix(stdlcd): Model copy going to wrong slot, refresh model headers (#4261) --- radio/src/storage/sdcard_yaml.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/radio/src/storage/sdcard_yaml.cpp b/radio/src/storage/sdcard_yaml.cpp index e690153e6..f7413e121 100644 --- a/radio/src/storage/sdcard_yaml.cpp +++ b/radio/src/storage/sdcard_yaml.cpp @@ -456,7 +456,13 @@ bool copyModel(uint8_t dst, uint8_t src) GET_FILENAME(fname_src, MODELS_PATH, model_idx_src, YAML_EXT); GET_FILENAME(fname_dst, MODELS_PATH, model_idx_dst, YAML_EXT); - return sdCopyFile(fname_src, fname_dst); + if (sdCopyFile(fname_src, fname_dst) == nullptr) { + // update headers + memcpy(&modelHeaders[dst], &modelHeaders[src], sizeof(ModelHeader)); + return true; + } + + return false; } static void swapModelHeaders(uint8_t id1, uint8_t id2)