mirror of
https://github.com/betaflight/betaflight.git
synced 2025-07-12 19:10:32 +03:00
Fix length
This commit is contained in:
parent
b6d37008f5
commit
c5497d11a9
4 changed files with 14 additions and 18 deletions
|
@ -188,8 +188,8 @@ static CMS_Menu cmsx_menuCalibration = {
|
|||
// Info
|
||||
|
||||
#if defined(USE_BOARD_INFO)
|
||||
static char manufacturerId[MAX_MANUFACTURER_ID_LENGTH + 1];
|
||||
static char boardName[MAX_BOARD_NAME_LENGTH + 1];
|
||||
static char manufacturerId[MAX_MANUFACTURER_ID_LENGTH];
|
||||
static char boardName[MAX_BOARD_NAME_LENGTH];
|
||||
|
||||
static const void *cmsx_FirmwareInit(displayPort_t *pDisp)
|
||||
{
|
||||
|
|
|
@ -29,8 +29,8 @@
|
|||
|
||||
#if !defined(BOARD_NAME)
|
||||
static bool boardInformationSet = false;
|
||||
static char manufacturerId[MAX_MANUFACTURER_ID_LENGTH + 1];
|
||||
static char boardName[MAX_BOARD_NAME_LENGTH + 1];
|
||||
static char manufacturerId[MAX_MANUFACTURER_ID_LENGTH];
|
||||
static char boardName[MAX_BOARD_NAME_LENGTH];
|
||||
static bool boardInformationWasUpdated = false;
|
||||
#endif
|
||||
|
||||
|
@ -42,10 +42,8 @@ void initBoardInformation(void)
|
|||
#if !defined(BOARD_NAME)
|
||||
boardInformationSet = boardConfig()->boardInformationSet;
|
||||
if (boardInformationSet) {
|
||||
strncpy(manufacturerId, boardConfig()->manufacturerId, MAX_MANUFACTURER_ID_LENGTH + 1);
|
||||
manufacturerId[MAX_MANUFACTURER_ID_LENGTH] = 0;
|
||||
strncpy(boardName, boardConfig()->boardName, MAX_BOARD_NAME_LENGTH + 1);
|
||||
boardName[MAX_BOARD_NAME_LENGTH] = 0;
|
||||
strncpy(manufacturerId, boardConfig()->manufacturerId, MAX_MANUFACTURER_ID_LENGTH);
|
||||
strncpy(boardName, boardConfig()->boardName, MAX_BOARD_NAME_LENGTH);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
@ -88,8 +86,7 @@ bool setManufacturerId(const char *newManufacturerId)
|
|||
{
|
||||
#if !defined(BOARD_NAME)
|
||||
if (!boardInformationSet || strlen(manufacturerId) == 0) {
|
||||
strncpy(manufacturerId, newManufacturerId, MAX_MANUFACTURER_ID_LENGTH + 1);
|
||||
manufacturerId[MAX_MANUFACTURER_ID_LENGTH] = 0;
|
||||
strncpy(manufacturerId, newManufacturerId, MAX_MANUFACTURER_ID_LENGTH);
|
||||
|
||||
boardInformationWasUpdated = true;
|
||||
|
||||
|
@ -107,8 +104,7 @@ bool setBoardName(const char *newBoardName)
|
|||
{
|
||||
#if !defined(BOARD_NAME)
|
||||
if (!boardInformationSet || strlen(boardName) == 0) {
|
||||
strncpy(boardName, newBoardName, MAX_BOARD_NAME_LENGTH + 1);
|
||||
boardName[MAX_BOARD_NAME_LENGTH] = 0;
|
||||
strncpy(boardName, newBoardName, MAX_BOARD_NAME_LENGTH);
|
||||
|
||||
boardInformationWasUpdated = true;
|
||||
|
||||
|
@ -126,8 +122,8 @@ bool persistBoardInformation(void)
|
|||
{
|
||||
#if !defined(BOARD_NAME)
|
||||
if (boardInformationWasUpdated) {
|
||||
strncpy(boardConfigMutable()->manufacturerId, manufacturerId, MAX_MANUFACTURER_ID_LENGTH + 1);
|
||||
strncpy(boardConfigMutable()->boardName, boardName, MAX_BOARD_NAME_LENGTH + 1);
|
||||
strncpy(boardConfigMutable()->manufacturerId, manufacturerId, MAX_MANUFACTURER_ID_LENGTH);
|
||||
strncpy(boardConfigMutable()->boardName, boardName, MAX_BOARD_NAME_LENGTH);
|
||||
boardConfigMutable()->boardInformationSet = true;
|
||||
|
||||
initBoardInformation();
|
||||
|
|
|
@ -4023,7 +4023,7 @@ static mspResult_e mspProcessInCommand(mspDescriptor_t srcDesc, int16_t cmdMSP,
|
|||
case MSP_SET_BOARD_INFO:
|
||||
if (!boardInformationIsSet()) {
|
||||
uint8_t length = sbufReadU8(src);
|
||||
char boardName[MAX_BOARD_NAME_LENGTH + 1];
|
||||
char boardName[MAX_BOARD_NAME_LENGTH];
|
||||
sbufReadData(src, boardName, MIN(length, MAX_BOARD_NAME_LENGTH));
|
||||
if (length > MAX_BOARD_NAME_LENGTH) {
|
||||
sbufAdvance(src, length - MAX_BOARD_NAME_LENGTH);
|
||||
|
@ -4031,7 +4031,7 @@ static mspResult_e mspProcessInCommand(mspDescriptor_t srcDesc, int16_t cmdMSP,
|
|||
}
|
||||
boardName[length] = '\0';
|
||||
length = sbufReadU8(src);
|
||||
char manufacturerId[MAX_MANUFACTURER_ID_LENGTH + 1];
|
||||
char manufacturerId[MAX_MANUFACTURER_ID_LENGTH];
|
||||
sbufReadData(src, manufacturerId, MIN(length, MAX_MANUFACTURER_ID_LENGTH));
|
||||
if (length > MAX_MANUFACTURER_ID_LENGTH) {
|
||||
sbufAdvance(src, length - MAX_MANUFACTURER_ID_LENGTH);
|
||||
|
|
|
@ -33,8 +33,8 @@
|
|||
|
||||
typedef struct boardConfig_s {
|
||||
uint8_t signature[SIGNATURE_LENGTH];
|
||||
char manufacturerId[MAX_MANUFACTURER_ID_LENGTH + 1];
|
||||
char boardName[MAX_BOARD_NAME_LENGTH + 1];
|
||||
char manufacturerId[MAX_MANUFACTURER_ID_LENGTH];
|
||||
char boardName[MAX_BOARD_NAME_LENGTH];
|
||||
uint8_t boardInformationSet;
|
||||
uint8_t signatureSet;
|
||||
} boardConfig_t;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue