From c96a30aea04980cd015d0ddd11f7a10bfe3d42a6 Mon Sep 17 00:00:00 2001 From: Max Paperno Date: Fri, 8 Dec 2017 01:25:22 -0700 Subject: [PATCH] [Companion] Fix GVar min corrupted when upgrading from firmware <= v217 (fixes #5466). (#5477) --- companion/src/firmwares/opentx/opentxeeprom.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/companion/src/firmwares/opentx/opentxeeprom.cpp b/companion/src/firmwares/opentx/opentxeeprom.cpp index bf6b80e33..9a8a13ac6 100644 --- a/companion/src/firmwares/opentx/opentxeeprom.cpp +++ b/companion/src/firmwares/opentx/opentxeeprom.cpp @@ -3227,15 +3227,16 @@ OpenTxModelData::OpenTxModelData(ModelData & modelData, Board::Type board, unsig for (int i=0; i= 218) { internalField.Append(new ZCharField<3>(this, modelData.gvarData[i].name, "GVar name")); - internalField.Append(new SignedField<12>(this, modelData.gvarData[i].min)); - internalField.Append(new SignedField<12>(this, modelData.gvarData[i].max)); + internalField.Append(new UnsignedField<12>(this, (unsigned &)modelData.gvarData[i].min)); + internalField.Append(new UnsignedField<12>(this, (unsigned &)modelData.gvarData[i].max)); internalField.Append(new BoolField<1>(this, modelData.gvarData[i].popup)); internalField.Append(new UnsignedField<1>(this, modelData.gvarData[i].prec)); internalField.Append(new UnsignedField<2>(this, modelData.gvarData[i].unit)); internalField.Append(new SpareBitsField<4>(this)); } else { - internalField.Append(new ZCharField<6>(this, modelData.gvarData[i].name, "GVar name")); + internalField.Append(new ZCharField<3>(this, modelData.gvarData[i].name, "GVar name")); + internalField.Append(new SpareBitsField<3*8>(this)); if (version >= 216) { internalField.Append(new BoolField<1>(this, modelData.gvarData[i].popup)); internalField.Append(new SpareBitsField<7>(this));