1
0
Fork 0
mirror of https://github.com/betaflight/betaflight.git synced 2025-07-25 09:16:07 +03:00

attempting to fix possible osd buffer overflow

This commit is contained in:
skyfpv 2023-05-31 15:47:14 -06:00
parent c55af22bec
commit 6318cdede7
3 changed files with 15 additions and 3 deletions

View file

@ -344,6 +344,15 @@ static void applyFlipOverAfterCrashModeToMotors(void)
}
}
int getAfterburnerTanksRemaining(void)
{
return mixerRuntime.afterburnerTanksRemaining;
}
float getAfterburnerTankPercent(void)
{
return mixerRuntime.afterburnerTankPercent;
}
static void applyRPMLimiter(void)
{

View file

@ -140,3 +140,6 @@ bool isFixedWing(void);
float getMotorOutputLow(void);
float getMotorOutputHigh(void);
int getAfterburnerTanksRemaining(void);
float getAfterburnerTankPercent(void);

View file

@ -1275,7 +1275,7 @@ static void osdElementMainBatteryUsage(osdElementParms_t *element)
//const float batteryRemaining = constrain(batteryConfig()->batteryCapacity - displayBasis, 0, batteryConfig()->batteryCapacity);
//remainingCapacityBars = ceilf((batteryRemaining / (batteryConfig()->batteryCapacity / MAIN_BATT_USAGE_STEPS)));
const float maxBoost = 100.0f;
const float batteryRemaining = constrain(mixerRuntime.afterburnerTankPercent, 0, maxBoost);
const float batteryRemaining = constrainf(getAfterburnerTankPercent(), 0, maxBoost);
remainingCapacityBars = ceilf((batteryRemaining / (maxBoost / MAIN_BATT_USAGE_STEPS)));
//}
@ -1290,9 +1290,9 @@ static void osdElementMainBatteryUsage(osdElementParms_t *element)
}
//tfp_sprintf(element->buff, element->buff+"%d", mixerRuntime.afterburnerTanksRemaining);
char tanksRemainingStr[1];
tfp_sprintf(tanksRemainingStr, "%d", mixerRuntime.afterburnerTanksRemaining);
tfp_sprintf(tanksRemainingStr, "%d", getAfterburnerTanksRemaining());
element->buff[MAIN_BATT_USAGE_STEPS+2] = tanksRemainingStr[0];
element->buff[MAIN_BATT_USAGE_STEPS+3] = '\0';
element->buff[MAIN_BATT_USAGE_STEPS+3] = '\0';
break;
}